Паруса - Postgres - Невозможно поднять - PullRequest
0 голосов
/ 19 февраля 2019

Проблема: Невозможно снять проект паруса (изначально написано для mysql, Изменить адаптер и настройки на postgres)

Ошибка:

info: ·• Auto-migrating...  (drop)
error: A hook (`orm`) failed to load!
error: 
error: error: syntax error at or near "ON"
   at Connection.parseE (*/node_modules/pg/lib/connection.js:569:11)
   at Connection.parseMessage (*/node_modules/pg/lib/connection.js:396:17)
   at Socket.<anonymous> (*/node_modules/pg/lib/connection.js:132:22)
   at Socket.emit (events.js:189:13)
   at Socket.EventEmitter.emit (domain.js:441:20)
   at addChunk (_stream_readable.js:284:12)
   at readableAddChunk (_stream_readable.js:265:11)
   at Socket.Readable.push (_stream_readable.js:220:10)
   at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)

error: Could not load Sails app.

Ответ адаптера:

Ошибкадетали:

{ error: syntax error at or near "ON"
    at Connection.parseE (*/node_modules/pg/lib/connection.js:569:11)
    at Connection.parseMessage (*/node_modules/pg/lib/connection.js:396:17)
    at Socket.<anonymous> (*/node_modules/pg/lib/connection.js:132:22)
    at Socket.emit (events.js:189:13)
    at Socket.EventEmitter.emit (domain.js:441:20)
    at addChunk (_stream_readable.js:284:12)
    at readableAddChunk (_stream_readable.js:265:11)
    at Socket.Readable.push (_stream_readable.js:220:10)
    at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
  name: 'error',
  length: 92,
  severity: 'ERROR',
  code: '42601',
  detail: undefined,
  hint: undefined,
  position: '191',
  internalPosition: undefined,
  internalQuery: undefined,
  where: undefined,
  schema: undefined,
  table: undefined,
  column: undefined,
  dataType: undefined,
  constraint: undefined,
  file: 'scan.l',
  line: '1134',
  routine: 'scanner_yyerror' }

Я пытался изменить настройки хранилища данных, пробовал локальное и удаленное развертывание, имя пользователя и пароль, изменение ролей, привилегии базы данных.Но, кажется, ничто не может это исправить.

Я что-то упустил?

   adapter: 'sails-postgresql',
   url: 'postgresql://postgres:postgres@localhost:5432/postgres',

Тип модели:


module.exports = {
    tableName: 'roles',
    attributes: {
        name: {
            type: "string",
            required: true,
            columnType: "varchar(255) COLLATE utf8_unicode_ci NOT NULL"
        },
        company_id: {
            type: "number",
            required: true,
            columnType: "int(11) NOT NULL"
        },
        mobile_user: {
            type: "number",
            required: false,
            defaultsTo: 0,
            columnType: "tinyint(1) NOT NULL DEFAULT '0'"
        },
        enforcement: {
            type: "number",
            required: false,
            defaultsTo: 0,
            columnType: "tinyint(1) NOT NULL DEFAULT '0'"
        },
    }
};

Я перевожу свою базу данных из mysql в postgre.Кто-нибудь сталкивался с такой же проблемой?

1 Ответ

0 голосов
/ 19 февраля 2019

После экспериментов с дополнительными настройками и изменениями.Я обнаружил, что проблема была вызвана моделями, т. Е. Путем изменения всех типов данных и условий, упомянутых в columnType модели, с MySQL на PostgresSQL, она работала как чудо.

Пример: tinyint (1) -> smallint, удаление условия COLLATE и т. Д.

...