アドバイスが欲しい非常に奇妙な問題があります。私は、Sails 1.0.2 (最初は 0.13 を使用して作成され、アップグレードされた)、sails-postgresql@1.0.0-13 を使用する、確立された既存の Sails アプリを持っています。かなり長い間、アプリには 9 つのモデルがありました (すべて pg を使用)。現在、さらに3つ追加しようとしています。私たちは自動移行が好きではないので、postgres でこれらを作成し、セイル生成モデルを使用して postgres テーブルに基づいてセイルのモデルを作成しました。これらのモデルは、既存のものと非常によく似ています。
ただし、単純なクエリを実行しようとすると、非常に奇妙なエラーが発生します。(「ユーザー」は既存のモデルの 1 つであり、新しいモデルの 1 つではないことに注意してください。したがって、これは明らかに orm フック全体を取り出しています。)
sails> User.find().then(console.log)
Promise {
_bitField: 0,
_fulfillmentHandler0: undefined,
_rejectionHandler0: undefined,
_promise0: undefined,
_receiver0: undefined }
sails> Unhandled rejection AdapterError: Unexpected error from database
adapter: Could not run select() because of 2 problems:
------------------------------------------------------
• "datastore" is required, but it was not defined.
• "models" is required, but it was not defined.
------------------------------------------------------
新しいモデル ファイルを削除すると、問題なく動作します。ファイルが存在する場合 (コンテンツ全体がコメント化されていても、モデルのすべてのプロパティがコメント化されていても!) 同じエラーが発生します。テーブルを再作成して単純化しようとしましたが (高度な Postgres 機能を使用したため)、何もしませんでした。
私が見つけた唯一の違いは、新しいモデルに「データストア」属性を追加した場合です。その場合、「古い」モデルを照会できますが、新しいモデルを照会しようとすると同じエラーが発生します。
config/models.js
&のすべての設定が正しく表示されることを確認しましたconfig/datastores.js
。