And*_*nov 1 ruby methods model ruby-on-rails instance
假设我有一个Post模型,我想在保存时运行一个方法
在post.rb我这样做:
:before_save some_method_on_post
def some_method_on_post
# Do something here
end
Run Code Online (Sandbox Code Playgroud)
我的问题是,如何在方法中引用当前实例化的Post对象?
编辑:所以澄清假设我想这样做:
def some_method_on_post
post.some_property = foo
end
Run Code Online (Sandbox Code Playgroud)
我是指post自己吗?
是.
使用属性设置方法时,请参考self方法中的方法
def self.attribute_name=(value)
@attribute_name = value
end
Run Code Online (Sandbox Code Playgroud)
作为一个快捷方便,当你有一个方法来检索但不设置对象(所以一个getter),你可以省略self,例如
def attribute_name
@the_value
end
Run Code Online (Sandbox Code Playgroud)