我对select标签存在很大问题。在我看来,我有以下代码:
<%= select 'lw', Logicalwarehouse.all %>
在我的控制器中:
....
@logical_wh = Logicalwarehouse.find(params['lw'])
@project.logicalwarehouses << @logical_wh
respond_to do |format|
if @project.update_attributes(params[:project])
flash[:notice] = 'Project was successfully updated.'
format.html { redirect_to(@project) }
format.xml { head :ok }
else
format.html { render :action => "edit" }
format.xml { render :xml => @project.errors, :status => :unprocessable_entity }
end
end
...
或者,我想在我的视图中使用drop.down菜单,让我在所有Logicalwarehouse
对象之间进行选择,这些对象将返回lw
变量中的所选对象,返回到控制器。我在查看select
字段时遇到问题。 Rails返回错误,它有错误的参数(2 for 3)
,任何建议?
谢谢大家
答案 0 :(得分:2)
我不知道具有Logicalwarehouse描述的属性的名称。我认为它是name
:
<%= select "lw", "id", Logicalwarehouse.all.map{|lw| [ lw.name, lw.id ] } %>
<强> UPD:强>
选定的id
将通过params[:lw][:id]
提供。