我正在使用
f.collection_select :country_id,Country.all,:id,:name)
产生
<select name="user[country_id]" id="user_country_id"> <option value="1">Canada</option> <option value="2">United Kingdom</option> <option value="3" >United States</option> </select>
我想在select中包含prov-val和code-val属性,这样我就可以动态更新省标签:
<select name="user[country_id]" id="user_country_id"> <option prov-val="Province / Territory" code-val="Postal Code" value="1">Canada</option> <option prov-val="County" code-val="Postcode" value="158">United Kingdom</option> <option prov-val="State" code-val="ZIP Code" value="2" >United States</option>
这可能使用collection_select吗?
解决方法
不确定是否可以使用collection_select,但我认为使用select可以做你想要的:
<%= f.select :country_id,Country.all.map {|c| [c.name,c.id,{:'prov-val' => c.prov_val,:'code-val' => c.code_val}]} %>
这假设您的country对象具有prov_val和code_val字段.