Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails:访问视图层中的枚举值_Ruby On Rails_Ruby On Rails 4_Activerecord_Enums - Fatal编程技术网

Ruby on rails Rails:访问视图层中的枚举值

Ruby on rails Rails:访问视图层中的枚举值,ruby-on-rails,ruby-on-rails-4,activerecord,enums,Ruby On Rails,Ruby On Rails 4,Activerecord,Enums,在Rails中从视图层访问枚举值时遇到问题 我有一个名为Rule的ActiveRecord模型,它定义了一个枚举操作: class Rule < ActiveRecord::Base enum operation: [:says, :contains] end 当我尝试从控制台访问operations字段时,它工作正常 rule.inspect #=> #<Rule id: 2, operation: 1> rule.operation

在Rails中从视图层访问枚举值时遇到问题

我有一个名为
Rule
的ActiveRecord模型,它定义了一个枚举
操作

class Rule < ActiveRecord::Base
  enum operation: [:says, :contains]
end
当我尝试从控制台访问operations字段时,它工作正常

rule.inspect             #=> #<Rule id: 2, operation: 1>
rule.operation           #=> "contains"
rule.inspect#=>#
rule.operation#=>“包含”
我验证了
操作
不是ruby/rails关键字。是否有一些技巧可以让枚举显示在视图层中


提前谢谢

这个问题是在我删除定义枚举的哈希时引起的。我这样做是为了为select标记提供选项

@operations = RowRule.operations
# alter @operations here
我通过克隆散列来解决这个问题:

@rule_operations = RowRule.operations.clone
# alter @operations here

我尝试将该列重命名为“op”,但这并没有解决问题。
@rule_operations = RowRule.operations.clone
# alter @operations here