gpt4 book ai didi

ruby-on-rails - 为什么 attr_accessor 在 Rails 中是必需的?

转载 作者:数据小太阳 更新时间:2023-10-29 06:28:42 25 4
gpt4 key购买 nike

我偶尔会在模型代码中看到属性访问器/读取器/写入器。如果我希望能够从 View / Controller 代码更新属性,是否需要这些?

我是初学者,所以我真的在谈论基本应用程序。

最佳答案

attr_accessor 是 Ruby 的核心特性,用于通过 getter 和 setter 方法生成实例变量。在基本 Ruby 中从不需要使用它(这很方便)。

对于 ActiveRecord 模型,ActiveRecord 已经为您的数据列生成了 getter 和 setter。不需要或不需要 attr_accessor

如果您有不需要保留的额外实例数据(即它不是数据库列),您可以使用 attr_accessor 来节省几行代码。

名称相似的 attr_accessible——在 Rails 代码中经常出现并与 attr_accessor 混淆——是一种在 ActiveRecord 模型中控制质量分配的不推荐方法。 Rails 4 不直接支持它;它已被强参数取代,允许更精细的控制。

关于ruby-on-rails - 为什么 attr_accessor 在 Rails 中是必需的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20533925/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com