我担心的是
module StrategyConcern
extend ActiveSupport::Concern
included do
attr_accessor :strategy_display_name
end
end
字符串
我已经把它包含在我的模型include StrategyConcern
中,但是当我试图像这样赋值时
obj["strategy_display_name"] = "test_display_name"
型
我得到错误
undefined method `strategy_display_name=' for #<Test:0x00007f868e4aa350>
型
我希望访问该对象属性时不会出现上述错误。
2条答案
按热度按时间baubqpgj1#
假设
obj
是模型的示例,您应该使用字符串
因此,只需去掉方括号(
[]
,主要用于处理数组和散列)你可以在那里阅读更多关于访问器的信息,例如:What is attr_accessor in Ruby?
628mspwn2#
您必须使用以下方法在模型中使用变量:
字符串
活动记录模型的
[]
运算符用于访问保存数据库中的列值的变量,而不是示例变量