내 애플리케이션에서 MongoDB를 사용하고 있습니다. 이제 다른 데이터를 얻으려면 Postgresql에 연결해야합니다. 하지만 Postgresql에 대한 연결 및 모델을 추가 한 후 .NET으로 응용 프로그램을 시작할 때 오류가 발생했습니다 sails lift
. 다음은 전체 오류 메시지입니다.
error: A hook (`orm`) failed to load!
error: Error (E_UNKNOWN) :: Encountered an unexpected error
error: syntax error at or near "SELEC"
at Connection.parseE (/Users/xx/Documents/xx/Code/services/node_modules/sails-postgresql/node_modules/pg/lib/connection.js:539:11)
at Connection.parseMessage (/Users/xx/Documents/xx/Code/services/node_modules/sails-postgresql/node_modules/pg/lib/connection.js:366:17)
at Socket.<anonymous> (/Users/xx/Documents/xx/Code/services/node_modules/sails-postgresql/node_modules/pg/lib/connection.js:105:22)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at readableAddChunk (_stream_readable.js:172:18)
at Socket.Readable.push (_stream_readable.js:130:10)
at TCP.onread (net.js:535:20)
작업 응용 프로그램을 비교하여 변경 한 모든 사항은 다음과 같습니다.
connection: 'mongodb'
로 models.js
기본 DB 연결로 설정 MongoDB를합니다.connection: 'postgresdb'
PostgreSQL을 연결하기위한 나의 새로운 창조 모델 (ActivityController)에서.이 작업을하는 데 많은 시간이 걸렸습니다. 문서에 대한 조사와 학습으로 모든 구성이 괜찮은 것 같습니다. 내가 놓친 것이 있습니까?
누군가 도울 수 있다면 감사하겠습니다.
마침내 근본 원인, 거의 고장을 찾았습니다. 기본 연결은 MongoDB이고의 값이 migrate
로 설정되어 alter
있으므로이 자동 마이그레이션 전략을 사용하는 PostgreSQL을 사용하는 모델입니다. 이것이 실제로 오류 메시지에서 유추 할 수있는 DB를 조작하려는 이유입니다.
그래서 migrate: safe
PostgreSQL에 연결하는 모델에 추가 한 후에 작동했습니다 .
다음은 SailsJS 문서의 자동 마이그레이션 전략입니다.
자동 마이그레이션 전략 | 기술
safe | never auto-migrate my database(s). I will do it myself, by hand. alter | auto-migrate columns/fields, but attempt to keep my existing data (experimental) drop | wipe/drop ALL my data and rebuild models every time I lift Sails
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다