繁体   English   中英

has_one关联和嵌套形式

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM