如何从其他对象中包含表单元素?

我正在使用一个非常简单的论坛软件来帮助我在铁轨上弄湿ruby。 我想要做的是在用户创建新主题时为post内容添加文本区域,但每次我尝试在主题表单中添加它时,都会收到以下错误:

NoMethodError in Topics#new Showing /Users/Ken/dev/forums/app/views/topics/_form.html.erb where line #11 raised: undefined method `merge' for :content:Symbol 

这是我的新主题表单:

     params[:forum] %>  


这是我的主题模型:

 class Topic  :destroy end 

这是我的Post模型:

 class Post < ActiveRecord::Base attr_accessible :content belongs_to :topic end 

如何在主题表单中使文本区域正常工作? 我是否需要将其添加到主题模型才能访问它,如果是,我该怎么做?

您可以使用fields_for帮助程序。 请参阅此链接, http://apidock.com/rails/ActionView/Helpers/FormHelper/fields_for 。 第一个参数可以是Post.new,然后您可以在该块中包含主题文本字段。 最终结果是一个嵌套的表单,您可以在控制器中进行解析。