簡體   English   中英

如何更改attr_accessible屬性的值?

[英]How do I change value of an attribute that is not attr_accessible?

我有一個用戶模型。

並且用戶有一個稱為余額的字段(代表他的帳戶中有多少錢)。

我顯然不想使其成為attr_accessible。

但我希望能夠更改其價值(例如,當我向他收費時)。

如何為該屬性編寫一個getter / setter方法?

@object.attribute = new_value attr_accesible是一種防止大規模分配的方法,請不要與attr_accessor ,后者會創建getter和setter方法

這是關於差異的問題attr_accessor和attr_accessible之間的差異

attr_accessible保護您免受批量分配(由update_attributes和類似者使用)的attr_accessible

它根本不會影響讀取該屬性的值,也不會影響您直接調用訪問器。 例如你可以寫

user.balance -= item.price
user.save!

假設您之前已驗證這確實是要采取的正確措施。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM