得到2个问题:
如何让simple_form_for使用单一资源:与用户相关联的foo_object(参见下面的代码摘录)?我得到NoMethodError:foo_objects_path
行中@foo
的未定义方法simple_form_for
。 foo_object_path
有一个有效路径,但似乎simple_form_for
正在使用复数版本。我已经google'd&阅读有关单一资源和路径问题的SO帖子,但尚未找到解决方案。
我是否需要为:foo_object创建一个嵌套资源,因为它与:user相关联?如果是,那么它会与Devise的用户模型冲突吗?
路线:
devise_for :users
resource :foo_object
型号:
:user is the Devise User's model and has_one :foo_object
:foo_object belongs_to :user
查看(haml):(更新6/27/13:更正为=来自 - )
= simple_form_for @foo do |f|
= f.input :firstname
= f.input :lastname
= f.button :submit
希望它很清楚。感谢。
答案 0 :(得分:5)
指南中有a note。这是一个解决方法:
= simple_form_for @foo, url: foo_object_path do |f|
= f.input :firstname
= f.input :lastname
= f.button :submit