我有用於搜索特定模型(訂單)的搜索表單。它工作正常,但我想添加在我的搜索方法從一個協會(交易),這樣嵌套參數:[「params」] [「transaction_id」]。與下面的代碼,我得到一個錯誤ActiveRecord::StatementInvalid in Orders#index
,因爲我不能用正確的方式表達它。我怎樣才能解決這個問題?如何從Rails關聯中獲取屬性
型號:
控制器:
def index
@orders = Order.search(params)
end
查看:
<%= form_tag orders_path, :method => 'get' do %>
<p>
<%= text_field_tag :search, params[:search],id: "search_text", placeholder: " Search order" %>
<%= submit_tag "Search", :name => nil, class: "btn btn-success", id: "search_but_order" %>
</p>
<% end %>
解決方案 正如@Lanny Bose建議我,我爲我的Order模型創建了一個新列,並將序列化參數的值傳遞給它。通過這種方式,我現在可以將其添加到我的搜索方法中。
你的意思是你要搜索該事務的id屬性? –
是的,但它在關聯模型'交易'中並且是嵌套的。 –
然後你想'transactions.id'不是'params.transaction_id' –