Ruby on rails Rails 3.2在单击“编辑”后未将下拉选择保存到表单中
我有一个带有输入字段和下拉框的表单,其中包含来自其他表的数据。(加入) 但是现在当我提交时,它是好的,但是当我想要编辑字段时,下拉字段是空的,而文本字段不是空的 我的表格代码:Ruby on rails Rails 3.2在单击“编辑”后未将下拉选择保存到表单中,ruby-on-rails,forms,save,submit,Ruby On Rails,Forms,Save,Submit,我有一个带有输入字段和下拉框的表单,其中包含来自其他表的数据。(加入) 但是现在当我提交时,它是好的,但是当我想要编辑字段时,下拉字段是空的,而文本字段不是空的 我的表格代码: <%= form_for @contracten, :html => { :multipart => true } do |f| %> <% if @contracten.errors.any? %> <div id="error_explanation">
<%= form_for @contracten, :html => { :multipart => true } do |f| %>
<% if @contracten.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@contracten.errors.count, "error") %> prohibited this contracten from being saved:</h2>
<ul>
<% @contracten.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div id="forms">
<div class="field">
<%= f.label :naam %><br />
<%= f.text_field :naam %>
</div>
<br>
<div class="field">
<%= f.label :omschrijving %><br />
<%= f.text_area :omschrijving %>
</div>
<br>
<div class="field">
<%= f.label :organisatie %><br />
<%= f.select :organisatieid, options_for_select(@organisaties.map{ |f| [f.naam, f.id] }), :include_blank => true %>
</div>
<br>
<div class="field">
<%= f.label :vestiging %><br />
<%= f.select :vestigingid, options_for_select(@vestigingens.map{ |f| [f.naam, f.id] }), :include_blank => true %>
</div>
<br>
<div class="field">
<%= f.label :Beheerder %><br />
<%= f.select :persoonid, options_for_select(@personen.map{ |f| [f.naam, f.id] }), :include_blank => true %>
</div>
<br>
<div class="field">
<%= f.label :contractsoort %><br />
<%= f.select :contractsoortid, options_for_select(@contractsoorten.map{ |f| [f.naam, f.id] }), :include_blank => true %>
</div>
<br>
<div class="field">
<%= f.label :datumingang %><br />
<%= f.datetime_select :datumingang %>
</div>
<br>
<div class="field">
<%= f.label :datumeinde %><br />
<%= f.datetime_select :datumeinde %>
</div>
<br>
<div class="field">
<%= f.label :contractduur %><br />
<%= f.number_field :contractduur, :placeholder => 'in jaren' %>
</div>
<br>
<div class="field">
<%= f.label :opzegtermijn %><br />
<%= f.number_field :opzegtermijn, :placeholder => 'In Maanden' %>
</div>
<br>
<div class="field">
<%= f.label :betalingsperiode_eenheid_id %><br>
<%= f.select :betalingsperiodeeenheidid, options_for_select(@betalingsperiodeeenhedens.map{ |f| [f.omschrijving, f.id] }), :include_blank => true %>
</div>
<br>
<div class="field">
<%= f.label :betalingstermijn %><br />
<%= f.number_field :betalingstermijn %>
</div>
<br>
<div class="field">
<%= f.label :pdf %><br />
<%= f.file_field :pdf %>
</div>
<br>
<div class="actions">
<%= f.submit "Toevoegen", :class => 'button3' %>
</div>
</div>
<% end %>
<br>
{:multipart=>true}do | f |%>
禁止保存此合同:
正确%>
正确%>
正确%>
正确%>
'在jaren中'>
'在Maanden中'>
正确%>
'按钮3'>
截图:
我希望有人知道问题出在哪里。将
:selected=>…
添加到您的选项中,以选择参数
例如:
@contracten.contractorsortid),
:include_blank=>true%>
更改实际上已保存,但在呈现表单时,必须指定实际选择的值。将:selected=>…
添加到选项中,以选择参数
例如:
@contracten.contractorsortid),
:include_blank=>true%>
更改实际上已保存,但在呈现表单时,必须指定实际选择的值。请包括表单的代码。还要确保表单字段中的名称与列名称匹配…用_form.html.erb编辑了我的问题。对不起,我忘了:)数据库中是否有OrganizatieID、OrganizatieID、persoonid、ContractsOrtID相同的名称?是的,我的数据库中有相同的名称请包含表单的代码。还要确保表单字段中的名称与列名称匹配…用_form.html.erb编辑了我的问题对不起,我忘了:)数据库中是否有OrganizatieID、OrganizatieID、persoonid、ContractsOrtID相同的名称?是的,我的数据库中有相同的名称不管怎么说,我更新了,在select中使用了\u collectio\u中的选项。\u select
,它比上一个更“rails way”。嗯,这不起作用。我得到错误的参数数(1对3)你可能在某个地方留下了右括号,因为没有使用1个参数调用函数。我不知道问题是什么,但这没关系,它现在起作用了不管怎么说,我更新了,在select中使用了\u collectio\u中的选项。\u select
,它比上一个更“rails way”。嗯,这不起作用。我得到错误的参数数(1对3)你可能在某个地方留下了右括号,因为没有使用1个参数调用函数。我不知道问题是什么,但这没关系,它现在起作用了。
<%= f.select :contractsoortid,
options_from_collection_for_select(@contractsoorten, 'id', 'naam',
:selected => @contracten.contractsortid),
:include_blank => true %>