0
Article.rb < ActiveRecord::Base   
... 

attr_reader :title

def title
    self.title.gsub(/"/," ")
end

end

我正在尝试覆盖每篇文章标题的显示方式,因为如果我不这样做它看起来很难看,但我不断收到如下错误:

SystemStackError in ArticlesController#index or StackLevelTooDeep

我不知道如何解决这个问题。如果我将方法更改为不同的方法,例如 ntitle,它将起作用。为什么?!

4

1 回答 1

3

当你在它self.title里面def title调用它自己时,你会得到无限递归,它会导致 error StackLevelTooDeep

这应该有效:

class Article < ActiveRecord::Base
  ...

  def title
    read_attribute(:title).to_s.gsub(?", " ")
  end

end
于 2014-12-09T06:27:13.613 回答