問題タブ [sails-postgresql]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - Sails 1.0.0 で postgresql データベースに接続していますか?
既存の Sails プロジェクトを 1.0.0 にアップグレードすることを決めたところ、データベースへの接続を試みるまで、ほとんどのアップグレード プロセスを完了することができました。これを持ち上げようとすると、次のエラーが表示されます。
データストアが使用するアダプター
default
は、Sails/Waterline の現在のバージョンと互換性がありません。アダプターは、有効な
adapterApiVersion
.Sails 1.0 のベータ版を使用している場合は、次のことを試してください。
npm install --sails-disk@beta を保存
私のdatastores.js
ファイルには以下が含まれています:
すべての値が環境変数として提供される場所。"sails-postgresql": "^1.0.0"
にインストールされ、保存されますpackage.json
models.js
次の行も含まれています: datastore: 'developmentPostgres'
、これは、私の理解では、すべてのモデルがデフォルトで上記のデータベースを使用する必要があることを意味します。
ここまでは、アップグレード プロセスは非常に簡単でした。ここでも単純なものが欠けているだけだと思います。誰でも提供できる洞察をいただければ幸いです。追加情報も喜んで提供します。
sails.js - postgres を使用して既存の Sailsjs アプリケーションにモデルを追加する
アドバイスが欲しい非常に奇妙な問題があります。私は、Sails 1.0.2 (最初は 0.13 を使用して作成され、アップグレードされた)、sails-postgresql@1.0.0-13 を使用する、確立された既存の Sails アプリを持っています。かなり長い間、アプリには 9 つのモデルがありました (すべて pg を使用)。現在、さらに3つ追加しようとしています。私たちは自動移行が好きではないので、postgres でこれらを作成し、セイル生成モデルを使用して postgres テーブルに基づいてセイルのモデルを作成しました。これらのモデルは、既存のものと非常によく似ています。
ただし、単純なクエリを実行しようとすると、非常に奇妙なエラーが発生します。(「ユーザー」は既存のモデルの 1 つであり、新しいモデルの 1 つではないことに注意してください。したがって、これは明らかに orm フック全体を取り出しています。)
新しいモデル ファイルを削除すると、問題なく動作します。ファイルが存在する場合 (コンテンツ全体がコメント化されていても、モデルのすべてのプロパティがコメント化されていても!) 同じエラーが発生します。テーブルを再作成して単純化しようとしましたが (高度な Postgres 機能を使用したため)、何もしませんでした。
私が見つけた唯一の違いは、新しいモデルに「データストア」属性を追加した場合です。その場合、「古い」モデルを照会できますが、新しいモデルを照会しようとすると同じエラーが発生します。
config/models.js
&のすべての設定が正しく表示されることを確認しましたconfig/datastores.js
。