Я использую Rails 4.2.3 с MySql 5.5.37. Недавно я изменил имя и тип моего столбца, и теперь, когда я отправляю форму Rails в поле формы, «selection_id» не получает захвата. Ниже мой Rails форма ...Почему Rails не захватывает одну из моих представленных параметров parametesr в моем контроллере?
<div class="field">
<%= f.label :day %><br>
<%= f.hidden_field :day, :validate => true %>
<div id="datepicker"></div>
</div>
<div class="field">
<%= f.label :selection_id %><br>
<div class="styled-select"><%= collection_select(:user_selection, :selection_id, @selections, :id, :description, {:prompt => true}) %></div>
</div>
<div class="field">
<%= f.label :total %><br>
<%= f.text_field :total, :size => 4, :validate => true %>
</div>
А вот это HTML, который получает выход в браузер ...
<div class="field">
<label for="user_selection_day">Day</label><br>
<input validate="true" type="hidden" value="02/07/2016" name="user_selection[day]" id="user_selection_day" />
<div id="datepicker"></div>
</div>
<div class="field">
<div class="field_with_errors"><label for="user_selection_selection_id">selection</label></div><br>
<div class="styled-select"><div class="field_with_errors"><select name="user_selection[selection_id]" id="user_selection_selection_id"><option value="">Please select</option>
<option value="3">option 1</option>
<option value="4">option 2</option></select></div></div>
</div>
<div class="field">
<label for="user_selection_total">Total</label><br>
<input size="4" validate="true" type="text" value="1" name="user_selection[total]" id="user_selection_total" />
</div>
Я могу видеть эти данные получать представленные в Chrome ...
user_selection[day]:02/19/2016
user_selection[selection_id]:3
user_selection[total]:9
но на моей стороне контроллера, когда я пытаюсь вывести параметры, только два из трех печатают. Это «заносит»
def create
@current_user = User.find(session["user_id"])
...
puts user_selection_params
печатает
{"day"=>"02/19/2016", "total"=>"9"}
Почему это другое поле заблудился и как я могу это исправить?
И ваш 'user_object_params' определяется как ...? Вероятно, вам не хватает ': object_id' из разрешенного списка атрибутов. Вы должны иметь: 'params.require (: user_object) .permit (: day,: total,: user_id)' – BroiSatse
О, хорошо, taht's, где я пропустил это. Забыл определить его там. Спасибо, - – Dave