Ruby on rails Rails模型属性选择器
我正在构建一个新模型,我想添加一个作为选择器的属性。你是怎么做到的?什么课 我有标准:整数,:datetime等 我想要一种: 选择器将有多种选择['run'、'ride'、'drive'、'fly']Ruby on rails Rails模型属性选择器,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在构建一个新模型,我想添加一个作为选择器的属性。你是怎么做到的?什么课 我有标准:整数,:datetime等 我想要一种: 选择器将有多种选择['run'、'ride'、'drive'、'fly'] 谢谢ruby中没有这方面的课程,您能获得的最接近的是: class YourModel < ActiveRecord::Base MyOptions = ['run', 'ride', 'drive', 'fly'] validates :my_attributes, inclu
谢谢ruby中没有这方面的课程,您能获得的最接近的是:
class YourModel < ActiveRecord::Base
MyOptions = ['run', 'ride', 'drive', 'fly']
validates :my_attributes, inclusion: {in: MyOptions}
end
classyourmodel
如果要更进一步,如果值不在允许的值中,可以重写setter以引发异常:
class InvalidValue < StandardError
end
def my_attribute=(value)
raise InvalidValue.new unless MyOptions.include?(value)
super
end
class InvalidValue
ruby中没有用于此目的的类,您可以获得的最接近的类是:
class YourModel < ActiveRecord::Base
MyOptions = ['run', 'ride', 'drive', 'fly']
validates :my_attributes, inclusion: {in: MyOptions}
end
classyourmodel
如果要更进一步,如果值不在允许的值中,可以重写setter以引发异常:
class InvalidValue < StandardError
end
def my_attribute=(value)
raise InvalidValue.new unless MyOptions.include?(value)
super
end
class InvalidValue
ruby中没有用于此目的的类,您可以获得的最接近的类是:
class YourModel < ActiveRecord::Base
MyOptions = ['run', 'ride', 'drive', 'fly']
validates :my_attributes, inclusion: {in: MyOptions}
end
classyourmodel
如果要更进一步,如果值不在允许的值中,可以重写setter以引发异常:
class InvalidValue < StandardError
end
def my_attribute=(value)
raise InvalidValue.new unless MyOptions.include?(value)
super
end
class InvalidValue
ruby中没有用于此目的的类,您可以获得的最接近的类是:
class YourModel < ActiveRecord::Base
MyOptions = ['run', 'ride', 'drive', 'fly']
validates :my_attributes, inclusion: {in: MyOptions}
end
classyourmodel
如果要更进一步,如果值不在允许的值中,可以重写setter以引发异常:
class InvalidValue < StandardError
end
def my_attribute=(value)
raise InvalidValue.new unless MyOptions.include?(value)
super
end
class InvalidValue
在Rails模型中实现可枚举属性有多种方法
这些方法倾向于从与BroiSatse答案相同的角度来处理问题,但提供了更全面的验证、帮助方法等
浏览这些链接,看看哪些最适合您的需要
在Rails模型中实现可枚举属性有多种方法
这些方法倾向于从与BroiSatse答案相同的角度来处理问题,但提供了更全面的验证、帮助方法等
浏览这些链接,看看哪些最适合您的需要
在Rails模型中实现可枚举属性有多种方法
这些方法倾向于从与BroiSatse答案相同的角度来处理问题,但提供了更全面的验证、帮助方法等
浏览这些链接,看看哪些最适合您的需要
在Rails模型中实现可枚举属性有多种方法
这些方法倾向于从与BroiSatse答案相同的角度来处理问题,但提供了更全面的验证、帮助方法等
浏览这些链接,看看哪些最适合您的需要
Camelcase是类名的约定。我会用一个常数:
MY_OPTIONS = %w(run ride drive fly).freeze
Camelcase是类名的约定。我会用一个常数:
MY_OPTIONS = %w(run ride drive fly).freeze
Camelcase是类名的约定。我会用一个常数:
MY_OPTIONS = %w(run ride drive fly).freeze
Camelcase是类名的约定。我会用一个常数:
MY_OPTIONS = %w(run ride drive fly).freeze
谢谢,我如何生成这个?rails生成迁移将类型添加到事件类型:???注意名为
type
的属性:您还需要将self.heritation\u column=nil
添加到类中。对于上面的问题,您可以像往常一样生成字符串列-它将作为字符串存储在内部railsg迁移添加到:string
?rails生成迁移将类型添加到事件类型:???注意名为type
的属性:您还需要将self.heritation\u column=nil
添加到类中。对于上面的问题,您可以像往常一样生成字符串列-它将作为字符串存储在内部railsg迁移添加到:string
?rails生成迁移将类型添加到事件类型:???注意名为type
的属性:您还需要将self.heritation\u column=nil
添加到类中。对于上面的问题,您可以像往常一样生成字符串列-它将作为字符串存储在内部railsg迁移添加到:string
?rails生成迁移将类型添加到事件类型:???注意名为type
的属性:您还需要将self.heritation\u column=nil
添加到类中。对于上面的问题,您可以像往常一样生成字符串列-它将作为字符串存储在内部<代码>rails g迁移添加到:字符串