【发布时间】:2014-08-12 21:00:12
【问题描述】:
所以,我有两个对象,Floor,它有_many FloorMonsters,FloorMonster 属于_to Floor。
我在 Floor 的显示页面中有一个 link_to new_floor_monster_path,我打算将 Floor id 作为参数传递。 link_to 当前如下所示:
= link_to "Add a Monster to this Floor", new_floor_monster_path(floor_id: @floor.id)
在 FloorMonster 的控制器中,新方法是这样的:
def new
@floor_monster = FloorMonster.new(floor_id: params[:floor_id])
respond_to do |format|
format.html # new.html.erb
format.json { render json: @floor_monster }
end
end
当我点击链接时,URL 会显示参数:
http://.../floor_monsters/new?floor_id=4
但是当我保存时, floor_id 为 nil 并且程序崩溃了。我在这里想念什么?我已经找到了与我完全一样的资源,但我没有成功。据我所知,The accepted answer here 和 this blog post 正在做我正在做的事情,但他们设法让它发挥作用。
【问题讨论】:
-
FloorMonster 新页面上有什么?从您给我们的内容来看,您仅在操作中使用 FloorMonster.new,它只是创建一个新实例,而不是持久化它。您有提交创建操作的表单吗?
标签: ruby-on-rails ruby parameters link-to