По какой-то причине только один параметр (Статус) в моем действии обновления сохраняет в базу данных после сохранения формы.Мой другой параметр (Примечания) показывает только как нулевое значение, независимо от того, что я ввожу в поле формы, что странно, поскольку логика для них обоих абсолютно одинакова.
Модель AgentActivity имеет вложенные атрибуты в представленияхмодель и, как таковая, я ожидаю, что она сохранит атрибуты при обновлении представления, но, похоже, этого не происходит.
Метод показа контроллера отправки
def show
@submission.agent_activities.build
end
Метод обновления контроллера отправки
def update
respond_to do |format|
if @submission.update(submission_params)
AgentActivity.create(agent_id: current_agent.id, submission_id: @submission.id, Notes: agent_activity_params[:Notes], Status: agent_activity_params[:Status] )
format.html { redirect_to @submission, notice: 'Submission was successfully updated.' }
format.json { render :show, status: :ok, location: @submission }
else
format.html { render :edit }
format.json { render json: @submission.errors, status: :unprocessable_entity }
end
end
end
Форма подачи
<%= form_for @submission do |f| %>
<%= f.fields_for :agent_activity do |a|%>
<td>
<div class="field">
<%= select_tag(:Status, options_for_select([['In Progress', 1], ['Not Interested', 2],['Viewing Arranged', 3]])) %>
</div>
</td>
<td>
<div class="field">
<%= a.text_field :Notes %>
</div>
</td>
<td>
<div class="actions">
<%= f.submit %>
</div>
</td>
<% end %>
<% end %>