验证后调用模型方法时出错

时间:2016-02-28 13:38:58

标签: ruby-on-rails

我有一个名为LearningText的模型,它有两个属性:webUrlcontent

我通过传递webUrl组件来实例化模型。从那开始,我想通过阅读Nokogiri的网页来生成content

我尝试使用生命周期方法content初始化after_validation来实现这一点:

class LearningText < ActiveRecord::Base
  after_validation: generate_content

private

  def generate_content
    @content = Nokogiri::HTML(open(@webUrl).read)
  end

end

但是,我收到此错误:

models/learning_text.rb:2: syntax error, unexpected ':', expecting keyword_end after_validation: generate_content ^

我做错了什么?

1 个答案:

答案 0 :(得分:1)

我应该写

after_validation :generate_content

而不是

after_validation: generate_content