2017-05-05 7 views
0

名前で昇順に並べ替えるテーブルがあります。 が、私はこのようにそれを実行しようとしましたが、それは助けにはならなかった。bookshelf.jsで並べ替えて保存する

return this.Model.query((qb) => { 
    qb.orderBy('contentName', 'ASC'); 
}).save(); 

私は何をしないのです、私はそれはそう難しいことではありませんように感じるが、私はちょうどそれを動作させることはできません。 bookshelf.jsの医者は本当に私を助けませんでした。私はここでは初心者ですから、これが理由かもしれません。ありがとうございました!

答えて

0

save()は、データの挿入/更新専用です。クエリからデータを取得するには、単一モデルの場合はfetch()、コレクションの場合はfetchAll()を使用します。コードを変更してみてください:

return this.Model.query((qb) => { 
    qb.orderBy('contentName', 'ASC'); 
}).fetchAll(); 
+0

お返事ありがとうございます。しかし、実際にはデータを更新したいので、データを取得するたびにソートする必要はありません。 新しいデータを挿入するときにテーブルをどのようにソートするかを知るだけでも問題ありません。 – Southgarden116

+0

テーブルのデータを同じデータで置き換えたいけど、注文したいのですか?もしそうなら、これはリレーショナルデータベースのやり方ではありません。つまり、実装が非常に依存していて、注文データの保証がない場合、行の物理的な配置は 'ORDER BY'節なしに戻されます。 – flaviodesousa

+1

それでは、データを取得するときにorderByを使用し続けます。情報ありがとうございます! – Southgarden116

関連する問題