gpt4 book ai didi

ruby-on-rails - 如何比较 Controller 中的枚举模型属性?

转载 作者:行者123 更新时间:2023-12-04 07:31:04 30 4
gpt4 key购买 nike

我有以下模型对象:

class ModelObj < ActiveRecord::Base
enum type: [:value_a, :value_b]
end

在我的 Controller 中,我想检查枚举 type属性的值,但不确定如何。 比较 Controller 中可枚举值的语法是什么?

这是来自一个不起作用的 Controller 的一些代码:
class SomeController < ApplicationController
def index
m = ModelObj.find(...)
if m.type == :value_a
# do this ...
end
end
end

最佳答案

根据ActiveRecord::Enum documentation ,您可以通过多种方式访问​​枚举值。一些例子:

m.type     # => 'value_a'
m.value_a? # => true
m.value_b? # => false

你提交的 Controller 代码你说“不起作用”,是不是你需要使用字符串比较而不是符号?

关于ruby-on-rails - 如何比较 Controller 中的枚举模型属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23750901/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com