0

私は wearquest モデルを持っていて、それは従業員に属しています。

employee_id = nil を示す wearquest スコープが必要です

私はこれがうまくいくはずだと思った:

    scope :notassigned, where(:employee_id => nil)

しかし、私はエラーが発生します:

undefined method `notassigned' for nil:NilClass

これはビューコードです:

    <% @worequests.notassigned.each do |worequest| %>
4

2 に答える 2

0

問題は、空のインスタンス変数でスコープを呼び出しているため、undefined method for nil:NilClass. スコープを作成すると、実際にはクラス メソッドが作成されるだけなので、そのクラスのインスタンスではなく、それぞれのクラスで実行する必要があります。

次のようにクエリを実行してみてください。

コントローラ

@worequests = WoreQuest.notassigned

意見

<% @worequests.each do |worequest| %>
于 2013-08-05T20:47:49.050 に答える