我试图通过将params传递到where来为我的编辑操作添加一些条件逻辑.
每当我使用.find(params [:id]以外的任何东西时,ActiveRecord :: Relation:Class的错误未定义方法`model_name’
我的代码如下
控制器:
def edit @office = Office.where("id = ? AND company_id = ?",params[:id],@company.id ) end
视图:
<%= simple_form_for @office,:url => settings_office_path,:html => { :class => "office_form" } do |f| %> <h1>Edit <%= @office.office_name %> Details</h1> <%= render :partial => 'form',:locals => { :f => f } %> <% end %>
我输出了@office的类,它是ActiveRecord :: Relation.如果我只是用
@office = Office.find(params[:id])
输出是Office.
我认为这是问题,但不知道如何解决它.有任何想法吗?