[英]has_one association and nested form
我有一个模型Post
:
class Post < ActiveRecord::Base
has_one :draft, class_name: Post, foreign_key: draft_id
end
在routes.rb
我有以下内容:
namespace :admin do
resources :posts do
resource :draft
end
end
我要实现的是在使用form_for
时启用草稿,即:
= form_for [:admin, @post, @draft] do |form|
...其中@post
和@draft
是同一模型的不同实例。
现在,如果这样做,我会收到一个错误:
NoMethodError: undefined method `admin_tour_tour_url'
问题 :那么如何使表单生成带有edit_
和new_
类的所需修饰符的admin_tour_draft_url
+?
PS我在这里走错了路吗?
通过从路由中显式提取路由,在form_tag帮助器中指定自己的路径:
1)耙路| grep admin_posts
2)注意路径..可能类似于“ admin_posts_draft”
3)在路径中添加“ _path”,这就是您的助手的名称..在代码中使用该助手
<%= form_tag admin_posts_draft_path(@post, @draft) %>
<% end %>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.