我正在开发 Ruby on Rails 应用程序,rails 版本 4.2.1。而且我不熟悉 Ruby on Rails 的微妙之处。 在我的应用程序的某些通用组件中,有一些类似的代码:
activated_record[property_name]
例如,如果我在数据库中有一条活动记录
my_activated_record
具有属性 name
,我们可以通过 my_active_record.name
读取它,但在上面的组件中,如果 property_name
等于 'name'
这也可以。
但是,将“计算属性”定义为类中的方法:
def my_computed_property
[some code]
end
这不起作用:
my_active_record.my_computed_property
工作得很好,但在上面的组件中,如果property_names
等于'my_computed_property'
,则仅渲染一个零值。
我该怎么做才能让这个通用组件像识别数据库值一样识别激活记录的计算值?
感谢@max,方法 public_send 做了我想要的!