我究竟做错了什么?未定义的方法`comment_content'

时间:2013-03-10 06:53:55

标签: ruby-on-rails ruby rails-migrations

我一步一步地按照这个页面 Micropost's comments on users page (Ruby on Rails)

然后我调查了我的错误,我到了这里 form_for , undefined method name

我运行了“rails generate migration add_comment_content_to_micropost comment_content:text” 然后运行“rake db:migrate”

但是,我仍然得到未定义的方法`comment_content'error

NoMethodError in Users#show

Showing C:/app/views/shared/_comment_form.html.erb where line #4 raised:

undefined method `comment_content' for #<Comment:0x4fe56b8>

以下是该列来自schema.db的部分

create_table "microposts", :force => true do |t|
    t.string   "content"
    t.integer  "user_id"
    t.datetime "created_at",      :null => false
    t.datetime "updated_at",      :null => false
    t.text     "commentcontent"
    t.text     "comment_content"
  end

1 个答案:

答案 0 :(得分:1)

错误是指Comment个对象,而不是Micropost个对象。在show方法中,您需要引用正确的对象。

查看帖子,你提到你犯了一些错误。例如,Comment类应该包含comment_content字段,而不是Micropost

我认为您没有正确创建模型。例如,您的Comment模型应该有user_idmicropost_id来满足belongs_to :userbelongs_to :micropost关系。