我想向现有模型中添加一些不需要持久化,甚至不需要映射到数据库列的属性.

推荐答案

当然要使用好的老ruby's attr_accessor.在您的模型中:

attr_accessor :foo, :bar

你将能够做到:

object.foo = 'baz'
object.foo #=> 'baz'

Ruby-on-rails相关问答推荐

刺激中的Rails 7和 bootstrap 错误-无法解析模块说明符 bootstrap

Ruby:如何通过谓词将一个集合拆分为 ruby​​ 中的两个集合?

如何在 Rails 中注释掉 ERB?

Rails 3 应用程序的 MySQL 集群 (NDB) 与 MySQL 复制 (InnoDB):优点/缺点?

你能从 Heroku dynos/workers 中获得多少性能?

I18n 用于特定于模型的 Rails 提交按钮

在 Windows 上使用 Ruby 进行开发

jQuery ajax 请求不会触发 Rails 控制器的 JS 响应?

Rails 4网站图标问题

在 ID 存在时获取表的未知主键

Rails data-disable-with re-enable 按钮

删除链接在 Rails 3 视图中发送Get而不是Delete

Rails 引擎中的迁移?

Rails Associations - has_many => :through - 但相同的模型

Rails 控制台中手动更新属性值的验证问题

如何一次显示一条 Ruby on Rails 表单验证错误消息?

Ruby on Rails:如何为 postgresql 编辑 database.yml?

Dotenv 多行变量

Rails:弃用警告:您没有设置 config.secret_key_base

Rails:您已经激活了 rake 10.3.1,但您的 Gemfile 需要 rake 10.2.2 (Gem::LoadError)