我正在尝试为事件记录创建一个新的 EventPlace。我已将 Event 设置为 Accepts_nested_attributes_for :event_places 以及我认为的以下代码:
<div id="add_venue_form" style="border:2px solid black; padding: 5px;">
<% form_for @event, :html => {:name => "form2"} do |f| -%>
<% f.fields_for @event_place do |v| -%>
<%= v.text_field :place_id %>
<% end -%>
<a class="button" style="margin-left:10px;margin-top:4px;" href="javascript:document.form2.submit();" onclick="this.blur();"><span>Save</span></a>
<% end -%>
当我在字段中添加一个 ID 号并单击保存按钮时,它给了我这个错误:
Processing EventController#update (for 127.0.0.1 at 2012-05-24 15:43:39) [PUT]
Parameters: {"id"=>"48404", "action"=>"update", "controller"=>"event",
"_method"=>"put", "event"=>{"event_place"=>{"place_id"=>"3"}}}
SQL (0.1ms) SET NAMES UTF8
Redirected to http://localhost:3001/event/list
Filter chain halted as [#<Proc:0x00000001094746e0@/Users/anthonylassiter/.rbenv/versions/ree-1.8.7 2012.02/lib/ruby/gems/1.8/gems/actionpack-2.3.10/lib/action_controller/verification.rb:82>] rendered_or_redirected.
Completed in 8ms (DB: 0) | 302 Found [http://localhost/events/48404]
我的更新方法
def update
@event = Event.find(params[:id])
if @event.update_attributes(params[:event])
redirect_to index
end
end
看起来参数是正确的。它似乎甚至没有在我的 event_controller 上点击我的更新方法,而是导致一些内部错误并尝试重定向到不存在的 /list,但是如果更新正在工作,我不应该需要它。