0

您好,对于我的应用程序,我需要保存用户键入的记录,例如,如果用户键入:

<p><%= f.label :fruit %><br />
<%= f.file_field :fruit%></p>

"apple"

在显示页面中,我需要该记录显示为

"bag of "+ :fuit

,但我不想保存“bag of”,当用户在显示页面时如何放置该文本?我已经阅读了有关过滤器的一些内容,但我不太了解我在 Rails 中很新

如果您需要更多信息(如代码),请告诉我,谢谢

现在在我的模型中编辑 我有这个

before_save: add_bag

def add_bag
  self.fruit = ("bag of" + self.fruit)
end

但这节省了所有这些“苹果袋”

4

1 回答 1

0

我建议你做这样的事情(假设你的模型是 Foo)

class Foo < ActiveRecord::Base
  def bag
    "bag of #{fruit}"
  end
end

foo = Foo.new
foo.fruit = "apple"
puts foo.fruit # => "apple"
puts foo.bag   # => "bag of apple"

这是你想要的吗?

于 2012-10-16T12:12:11.687 回答