我试图在我的模型上获取虚拟属性的值,是否有其他方法来获取值?我需要将一个字符串传入哈希值以检索值...
class Property < ApplicationRecord
def full_address
"#{address1}, #{city}, #{postcode}"
end
end
然后尝试访问完整地址的值,如下所示:
att_name = 'full_address'
property[att_name]
最后一行似乎对我不起作用。 property是Property的一个实例。
答案 0 :(得分:2)
正如Pavan在评论中提到的那样,我将尝试更多地解释那里发生的事情。
att_name = 'full_address'
,在这里你要为att_name指定一个字符串,但你打算调用函数full_address 。 所以通过删除''around full_address
您的代码变为att_name = full_address
答案 1 :(得分:2)
正如我所说,你应该att_name = full_address
而不是att_name = 'full_address'
。
当您执行att_name = 'full_address'
时,它会将att_name
的值指定为full_address
,因为您将其定义为字符串。