Ruby on rails 为什么它告诉我方法内容是未定义的?
我正在尝试将邮件回复添加到此应用程序: 然而,我不断得到一个错误:下面这个部分的未定义方法“content”(第17行)Ruby on rails 为什么它告诉我方法内容是未定义的?,ruby-on-rails,Ruby On Rails,我正在尝试将邮件回复添加到此应用程序: 然而,我不断得到一个错误:下面这个部分的未定义方法“content”(第17行) 五年前发的。 评论 “20”,:rows=>“2”,占位符:“撰写新评论…”%> 这没有任何意义,因为它与第2行没有任何问题,例如,我没有明确定义方法内容在我的micropost控制器中的任何地方或任何其他地方。我应该在哪里定义内容以及如何定义内容 下面是我的注释模型代码 class Comment < ActiveRecord::Base attr_ac
五年前发的。
评论
“20”,:rows=>“2”,占位符:“撰写新评论…”%>
这没有任何意义,因为它与第2行没有任何问题,例如,我没有明确定义方法内容在我的micropost控制器中的任何地方或任何其他地方。我应该在哪里定义内容以及如何定义内容
下面是我的注释模型代码
class Comment < ActiveRecord::Base
attr_accessible :content
belongs_to :micropost
validates :content, presence: true, length: { maximum: 140 }
validates :micropost_id, presence: true
default_scope order: 'comments.created_at DESC'
end
class注释
它试图对注释调用内容
,因此注释模型需要一个内容
实例方法
第2行正在调用
@micropost
上的方法,该方法看起来是另一个类的实例。它似乎是在micropost上调用它,而不是在@micropost?它是micropostconroller的一个实例,而不是commentcontroller。但这两种方法都没有定义内容。类似于我想象的def content end(如果我错了,请纠正我)。那么我该如何在commentcontroller中定义它呢?它不调用任何控制器实例-一旦您在渲染视图中,控制器的工作就完成了。它是调用这些方法的模型的实例。您可能希望在注释模型上定义内容,而不是控制器。内容似乎是在注释模型上用validates定义的。不是这样吗?我不确定你所说的“使用验证定义”是什么意思。好吧,那么它是否没有在我的评论模型中定义?您如何定义内容?
class Comment < ActiveRecord::Base
attr_accessible :content
belongs_to :micropost
validates :content, presence: true, length: { maximum: 140 }
validates :micropost_id, presence: true
default_scope order: 'comments.created_at DESC'
end