开发者

Dropdown list in Rails tied to a different model

I have Category and a Product models. I want for each product to belong to a category. How would I have a drop down list so that you can select a category from the product pages?

I've gotten everything to work with this:

<%= collection_select(:category, :id, @categories, :id, :title, options ={:prompt => "-Select a category"}, :class =>"category") %>

and using

@product.category_id = params[:category][:id]

in my update/create controller methods

but it feels clunky and it does not "read" the value from the @product when editing and I have no idea how to make it so that it does. Am I doing开发者_StackOverflow社区 something wrong?


First two params for collection_select should be model you are trying to update and its attribute. So do something like this:

<%= collection_select(:product, :category_id, @categories, :id, :title, options ={:prompt => "-Select a category"}, :class =>"category") %>

This will update @product.category_id (so you don't have to do it manually) and it will also read correctly previously selected value.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜