В моем приложении rails есть несколько списков выбора, например:
<li>Company<span><%= f.select :company_id, Company.all.collect {|m| [m.companyname, m.id]} %></span></li>
Все они работают хорошо, за исключением - иногда, если вы переходите в режим редактирования, список выбора возвращается к верхнему элементу, а не к элементу, который был выбран при создании. Поэтому, если вы перейдете в режим редактирования, а затем нажмете кнопку «Обновить», фактически не внося никаких изменений, списки по умолчанию станут верхним элементом, даже если вы их не трогали.
Есть ли способ обойти это?
Спасибо
Danny
EDIT:
<% form_for (@kase), :html => { :multipart => true } do |f| %>
<li>Appointed Surveyor<span><%= f.select :appointedsurveyor_id, Company.all.collect {|m| [m.companyname, m.id]}, {:selected => @kase.appointedsurveyor_id} %></span></li>
<li>Surveyor Name<span><%= f.select :surveyorperson_id, Person.all.collect { |x| [x.personname, x.id]}, {:selected => @kase.surveyorperson_id} %></span></li>
Я пробовал вышеупомянутое, но, к сожалению, он все еще возвращается к значению по умолчанию.
Я застрял в этом, я не могу найти никаких учебников и т.д. по этому вопросу.
РЕДАКТИРОВАТЬ 2:
<li>Appointed Surveyor<span><%= f.select :appointedsurveyor_id, Company.all.collect {|m| [m.companyname, m.id]}, {:selected => (@kase.appointedsurveyor_id rescue "")} %></span></li>
<li>Surveyor Name<span><%= f.select :surveyorperson_id, Person.all.collect { |x| [x.personname, x.id]}, {:selected => (@kase.surveyorperson_id rescue "")} %></span></li>