2

次の 2 つの基準セットでは、Lithium と MongoDB を使用して同じ結果が得られます。どちらも同じように読みやすく、書きやすいです。効率的な理由から、どちらか一方を優先する必要がありますか?それとも、もう一方の Lithium/MongoDB シンタックス シュガーにすぎませんか?

$criteria = array(
    'fields' => array('_id', 'title', 'created', 'edited', 'username'),
    'order' => {'edited' => 'ASC'},
    'limit' => 3
);

$criteria = array(
    '$orderby' => array('edited' => 'ASC'),
    'fields' => array('_id', 'title', 'created', 'edited', 'username'),
    'limit' => 3
);

orderフォローアップの質問: andに使用する正しい構文を理解するのに本当に苦労しました$orderby。一般的に、Lithium のコードを理解するのはかなり難しいと思います。よりよく/より速く理解するためにコードベースにアプローチする最善の方法について何か提案はありますか?

PS:フォローアップの質問が実際には StackOverflow スタイルではない可能性があることは認識していますが、SO や他の場所には、まさにこの問題を示唆する他の投稿があります (例: CRUD を超える Lithium アプリ)。これに関する意見は本当に貴重です!

4

1 に答える 1

6

Lithium'order'は MongoBDsort() ソースに変換します

MongoDB の$orderbyディレクティブは、ソースsort()の後に呼び出すのと同じですfind()

したがって、どちらも同等です。基礎となるデータソースと対話するための一貫性のある統合された API であるため、これを使用します
order

それが役に立てば幸い

于 2012-06-11T12:50:26.910 に答える