代码之家  ›  专栏  ›  技术社区  ›  ryeguy

如何覆盖活动记录对象中的属性分配?

  •  4
  • ryeguy  · 技术社区  · 14 年前

    我知道您可以使用虚拟属性来实现这一点,但是如果列实际存在呢?

    例如,我的模型有一个 raw_topic 列。什么时候? 原始主题 准备好了,我要 artist song_title 以…为基础 原始主题 的内容。理想情况下,我想覆盖 raw_topic= 方法,但Rails似乎不喜欢这样。

    正确的方法是什么?只有回拨电话吗?

    1 回复  |  直到 14 年前
        1
  •  9
  •   Ryan Bigg Andrés Bonilla    14 年前

    你可以这样做:

    def raw_topic=(value)
      # do something with raw topic
      self[:raw_topic] = value
    end
    

    这样,如果您需要采取行动,就可以确保您仍然拥有原始主题。