web-dev-qa-db-ja.com

Meteorコレクションを挿入時間でソートするにはどうすればよいですか?

私はMeteorを使用して最初のプロジェクトに取り組んでおり、ソートに多少の困難を抱えています。

ユーザーが格言を入力して、リストに表示するフォームがあります。現在、最新の格言はリストの下部に自動的に表示されます。代わりに最新のものをリストの一番上に表示する簡単な方法はありますか?

私は試した:

   Template.list.aphorisms = function () {
    return Aphorisms.find({}, {sort: {$natural:1}});
};

また、Meteorのドキュメントには多くの例がないため、困惑しています。

58
squeezemylime

_date_created_がタイムスタンプと一緒に有効な日付形式であると仮定すると、Date.parse() javascript関数を使用して_date_created_の解析された値を挿入する必要があります。 1970年1月、および_date_created_に含まれる日付値。

その結果、最後に追加されたレコードには、その前に挿入されたレコードよりも大きい_date_created_の値が含まれます。

レコードを取得するとき、次のように_date_created_パラメータの降順でカーソルをソートします。

_ Aphorisms.find({}, {sort: {date_created: -1}});
_

これにより、レコードが新しいものから古いものにソートされます。

お役に立てれば。

107
sohel khalifa

私は次のことがクリーンなソリューションであることがわかりました。

   Template.list.aphorisms = function () {
      return Aphorisms.find().fetch().reverse();
   };

コレクション全体が既に希望する逆順で存在している場合、すべてのオブジェクトの配列を作成し、順序を逆にすることができます。

9
Samuel Ellis