我在app / models / post.rb中有一个模型
class Post < ActiveRecord::Base
end
我在app / models / post / note.rb中有另一个模型
class Post::Note < Post
mount_uploader :file, FileUploader
end
在我的控制器中:
def new
@note = Post::Note.new
end
我的观点表是:
<%= simple_form_for @post, :validate => true, :html => {:class => 'form-horizontal'} do |form| %>
<%= form.input :title, :validate => {:presence => true} %>
<%= form.button :submit %>
<% end %>
#&lt;#:0x007fe3d3fe2b08&gt;`
的错误为undefined method
post_notes_path'
我想知道如何编写正确的路由配置?
答案 0 :(得分:1)
您可以将网址指定为simple_form
的选项,以覆盖其使用的默认路径。因此,如果您的Post::Note
模型有路径助手note_path
,那么这应该有效:
<%= simple_form_for @post, :url => note_path, :validate => true, :html => {:class => 'form-horizontal'} do |form| %>
<%= form.input :title, :validate => {:presence => true} %>
<%= form.button :submit %>
<% end %>
参考:How do you handle single table inheritance in SimpleForm so a single helper handles all models?