我一步一步地按照这个页面 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
答案 0 :(得分:1)
错误是指Comment
个对象,而不是Micropost
个对象。在show方法中,您需要引用正确的对象。
查看帖子,你提到你犯了一些错误。例如,Comment
类应该包含comment_content
字段,而不是Micropost
。
我认为您没有正确创建模型。例如,您的Comment
模型应该有user_id
和micropost_id
来满足belongs_to :user
和belongs_to :micropost
关系。