ruby - 虚拟属性的 属性名= 方法不执行

【字号: 日期:2022-10-17浏览:29作者:雯心

问题描述

user.rb 定义了 password 虚拟属性ruby - 虚拟属性的 属性名= 方法不执行

然而输出了一下 password= 那个方法没有执行....23333

请指教

问题解答

回答1:

因为用到了 ror 4.2 正确的做法是把你的 虚拟属性加入到 :permit(:虚拟属性名) 中

回答2:

我没怎么用过 erb,不过你确定模板里会调用password=这个方法吗?这种需求我习惯用 before_create 回调……

另外这种事儿交给专业的去做吧。

回答3:

Ruby on Rails 不需要直接写 attr_accessor.

但是需要使用到 strong-parameters,参考下面的写法,把 password 加入 白名单中:http://edgeguides.rubyonrails.org/action_controller_overview.html#stro...

相关文章: