問題タブ [feathers-sequelize]

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.

0 投票する
2 に答える
756 参照

sql-server - Feathers と Sequelize SQL Server エラー

私はいくつかのSQLサーバーエラーに遭遇しています.feathers jsとsequelizeを使用して単純なrest APIを使い始めようとしています. SQL Server 2012 (express) バージョンを使用しています。

最初に私のコード:

API エンドポイントにヒットすると、/api/workordersエラーが発生します。

SequelizeDatabaseError: FETCH ステートメントでのオプション NEXT の使用法が無効です。

SQL が生成されたことがわかります。

SQL Server には ORDER BY 句が必要なようです。そこで、エンドポイントにパラメーターを送信してみました/api/workorders?$sort=id

これもエラーになります:

SequelizeDatabaseError: 列名 '1' が無効です。

生成された SQL は次のようになります。

このエラーはより明白で、列 1 または 0 はありません。

以前にこれらの問題に遭遇した人はいますか?

0 投票する
0 に答える
399 参照

sequelize.js - 主キー Sequelize と Feathersjs でソート ID が重複する問題

わかりましたので、これを使用してデフォルトのソート順を取得できました(ありがとうございます):

FeathersJsでデフォルトのソート順を設定するにはどうすればよいですか

これはmssqlからデータを引き出しています

関連するエンティティを取得するために、フックにインクルードを追加しました。

生成された SQL ステートメントの終わり

ORDER BY [Invoice].[id] DESC, [Invoice].[id] OFFSET 0 ROWS FETCH NEXT 10 ROWS ONLY;

エラーが発生します。

「列が order by リストで複数回指定されています。order by リストの列は一意でなければなりません。」

関連エンティティを に配置する前は、正常に機能していましたが、これは壊れます。多分それはこの古いバグのようなものに関連しています..? mssql を Sequelize: 主キーと制限による順序

または、これを正しく実装していない可能性があります。

0 投票する
0 に答える
937 参照

sequelize.js - feathers-sequelize を使用した順序付けクエリ

関連のあるテーブルのクエリに順序付けを追加するフックを作成しようとしています。私のクエリは、結合テーブル 'point_photos' を持ち、m:n で 'photos' に関連付けられている 'points' に関するものです。標準的なpheersjsの$sortは連想ソートに使えないので、フックにsequelize ' order 'をセットしてみたら見事に動きました。ここで、検索クエリから「順序」を設定したいと思います:

しかし、今私は得る:

hook.params.sequelize はフックとクエリで同じように見えるので、これは私にとって奇妙です...

また、検索クエリ「順序」を単純化すると、同じエラーが発生します。クエリ オブジェクトに「注文」を追加することは許可されていませんか?

編集:「include」オプションに注文を追加することで、ハックすることができました:

それに応じて、関連付けフックを調整します。これは少しばかげていますが、sequelize の「順序」は「インクルード」と同じレベルであるため、混乱を招きます。私の質問は、次のように要約されます。クエリ オブジェクトの「order」キーが機能しないのはなぜですか? どういうわけかテーブルフィールドと見なされているようです。