0

私のpages_controller.rbで

def home
   @date = Lesson.find(params[:created_at])
end

この時点では、何かを操作する前に日付を取得して視覚化しようとしていますが、その@dateインスタンス変数をで呼び出そうとするとhome.html.erb

私が得ているエラーはですがCouldn't find Lesson without an ID、理由はわかりません。何か案は?

4

3 に答える 3

0

簡単なクエリを含み、created_at日時で順序付けられたレッスンレコードを保持する配列を返すヘルパーがいくつかあります。

インデックスアクションでは、次のものを使用できます。

@date = Lesson.find(:all, :order => 'created_at DESC')

インデックステンプレートを使用している場合は、各sytnaxを使用してそれらを一覧表示し、そのため、プロパティにアクセスできるショーページにルーティングすることができます。

また、モデルスコープは「最もクリーンな」ソリューションになります

スキニーコントローラーとファットモデルを保持することを忘れないでください

グリーツ

于 2012-05-24T07:45:55.283 に答える
0

このような問題の最善の解決策-スコープを使用する

レッスンモデルに次を追加します。

scope :by_date, order("created_at DESC")

default_scopeもあります

于 2012-05-24T07:56:21.253 に答える
0

findIDのみを受け入れます。あなたはそれにDateTimeを与えようとしています。おそらくこれはあなたが望むものですか?

@date = Lesson.find( params[:id] ).
               select( :created_at ).
               created_at
于 2012-05-24T07:58:03.707 に答える