0

私は少し困惑しています-nil:NilClassの'未定義のメソッド`each'エラーが発生します。

モデルに非常に単純なスコープを作成しました

  def self.just_added
      where('created_at > ?', Time.now-7.days.ago).order("created_at desc").first(4)
  end

そして私の見解ではループ

<% @just_added_jobs.each do |job| %>
    <%= link_to job.name, job %>         
<% end %>

何が起こっているのかわからない-私はかなりの証明者であり、以前のようにスコープを作成しましたが、うまく機能しました。

また、日付を使用してより複雑なスコーピングを実行することも計画しています。モデルの一部としていくつかの日付フィールドがあります(つまり、期限が近い、期限が過ぎているジョブをループするため)。スコーピングの日付について詳しくはどこで読むことができますか?

4

1 に答える 1

3
  1. 表示するclassmethodの結果は決して得られないため、コントローラーでのnil設定に失敗していると結論付ける必要があります。@just_added_jobs

  2. created_at > Time.now-7.days.ago意味がありません、あなたはおそらく意味しますcreated_at > 7.days.ago

  3. first(n)結果はスコープではなく配列になるため、スコープを呼び出すことはお勧めできません。必要limit(n)です。

于 2013-01-19T23:59:11.603 に答える