Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 为什么它告诉我方法内容是未定义的?_Ruby On Rails - Fatal编程技术网

Ruby on rails 为什么它告诉我方法内容是未定义的?

Ruby on rails 为什么它告诉我方法内容是未定义的?,ruby-on-rails,Ruby On Rails,我正在尝试将邮件回复添加到此应用程序: 然而,我不断得到一个错误:下面这个部分的未定义方法“content”(第17行) 五年前发的。 评论 “20”,:rows=>“2”,占位符:“撰写新评论…”%> 这没有任何意义,因为它与第2行没有任何问题,例如,我没有明确定义方法内容在我的micropost控制器中的任何地方或任何其他地方。我应该在哪里定义内容以及如何定义内容 下面是我的注释模型代码 class Comment < ActiveRecord::Base attr_ac

我正在尝试将邮件回复添加到此应用程序:

然而,我不断得到一个错误:下面这个部分的未定义方法“content”(第17行)

  • 五年前发的。 评论

    “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