【发布时间】:2015-11-01 10:08:12
【问题描述】:
在我的控制器中,我使用@invitation.send_email 来调用这个模型方法:
def send_email
create_digest("cycle")
...
end
private
def create_digest(attribute)
token = send("#{attribute}_token")
digest = send("#{attribute}_digest")
self.token = User.new_token # So this should translate to self.cycle_token
self.digest = User.digest(token) # So this should translate to self.cycle_digest
end
然而,它会在私有方法中引用 self.token = User.new_token 行产生错误:
undefined method `token=' for #<Invitation:0x007f1472d233f8>
它似乎没有将self.token 转换为self.cycle_token。有人看到我做错了吗?
原始方法如下,但我正在尝试将其重构为更灵活的方法。
def create_cycle_digest
self.cycle_token = User.new_token
self.cycle_digest = User.digest(cycle_token)
end
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-4 methods