在rails中传递参数给一个简单的窗体关联



我有很多属于办公室的设备

在office列表中,我放置了这个链接,以将id传递给新设备的形式
<%= link_to "", new_equipment_path(office: params[:id])" %>

生成的url看起来正常,传递了所单击的办公室的正确id
/equipments/new?office=6

我检查像这样的开放单元格,我看到数字id(例如6)
<%= f.input :observations, input_html: { value: params[:office]} %>

问题是,当我尝试使用真正的单元格,即f.a association,只是在空白中,手动我可以选择一个数字(1,2,3,4,5,6等),但它不是把我在参数中传递的数字,我尝试隐藏和其他选项,没有运气
<%= f.association :office, label_method: :id, value_method: :id, input_html: { value: params[:office] } %>

# show.html。erb(办公室)

<% @offices.each do |office| %>
<tr>
<td><%= office.name %></td>
<td><%= link_to "Add new equipment", new_equipment_path(office:params[:id])%></td>
</tr>
<% end %>
<标题>form.html。动词(新设备)
<%= simple_form_for(@equipment) do |f| %>
<%= f.association :office, label_method: :id, value_method: :id, input_html: { value: params[:office] } %>
<%= f.input :observations, input_html: { value: params[:office]}%>
<% end %>

首先我尝试没有简单的表单和工作没有问题

<%= form.hidden_field :office_id, value: params['office'] %>

问题是simpleforms不接受input_html: {value: params[:office]在f.association,我为此改变,它工作

<%= f.input :office_id, value_method: :id, label_method: :id, input_html: { value: params[:office] }, as: :hidden %>

相关内容

  • 没有找到相关文章

最新更新