在Rails控制台中工作但不在Controller中工作。错误:nil的未定义方法`method':NilClass

时间:2014-02-19 06:13:58

标签: ruby-on-rails ruby-on-rails-4 squeel

我正在使用Squeel,我有一个奇怪的问题。以下行在Rails控制台中运行正常,但在模型的控制器中运行时会出错!

Issue.joins{property.users}.where{property.users.id == 1}

问题belongs_to属性和属性has_and_belongs_to_many用户。我正在尝试加载与user_id == 1相关的所有问题。

我得到错误:“未定义的方法`用户'为nil:NilClass ”当我在IssuesController中运行该行,但它在Rails控制台中有效。怎么了?

P.S。我正在运行Rails 4.0.3,Ruby 2.0.0和Squeel 1.1.1

1 个答案:

答案 0 :(得分:0)

试试这个

my_properties = Property.where{user_id == 1}.select{issue_id}
Issue.where{id.in(my_properties)}