attr_accessor :password, :password_confirmation and
attr_accessible :password, :password_confirmation
誰能告訴我什麼區別差異與attr_accessible
attr_accessor :password, :password_confirmation and
attr_accessible :password, :password_confirmation
誰能告訴我什麼區別差異與attr_accessible
attr_accessor是Ruby的方法。它設置了getter和setter。但是,attr_accessible是一種rails方法,可以在批量分配中傳遞值。
對於示例 -
attr_accessor :password, :password_confirmation
u = User.new({ :password => 'XXX', :password_confirmation => 'XXX' })
---
u.password => nil
u.password_confirmation => nil
但是,你將能夠在這種情況下,用戶的getter和setter值。
attr_accessor :password, :password_confirmation
u.password = 'XXX'
---
u.password => 'XXX'
在另一方面爲attr_accessible -
attr_accessible :password, :password_confirmation
User.new({ :password => 'XXX', :password_confirmation => 'XXX' })
---
u.password => 'XXX'
u.password_confirmation => 'XXX'
attr-accessor
創建getter
和setter
方法指定的屬性
method.attribute
器(getter)
method.attribute
=(設定部)
attr_accessible
來自ActiveRecord::Base
和「指定可通過質量分配設置的模型屬性的白名單」。
檢查這 - http://stackoverflow.com/questions/3136420/difference-between-attr-accessor-and-attr-accessible –