向sql表添加新数据时的Ruby on rails if条件
我对ruby和RubyonRails还很陌生,我有一个小问题: 如果条目的值大于X,我想将一个布尔值设置为true,如果该值小于Y,则将另一个布尔值设置为true 我真的不知道该在哪里编写代码,或者最好的方法是什么 要清楚的是,我有一个表单(用脚手架制作),其中我询问一个值,根据这个值,2个布尔值中的一个可能被设置为true向sql表添加新数据时的Ruby on rails if条件,sql,ruby-on-rails,boolean,Sql,Ruby On Rails,Boolean,我对ruby和RubyonRails还很陌生,我有一个小问题: 如果条目的值大于X,我想将一个布尔值设置为true,如果该值小于Y,则将另一个布尔值设置为true 我真的不知道该在哪里编写代码,或者最好的方法是什么 要清楚的是,我有一个表单(用脚手架制作),其中我询问一个值,根据这个值,2个布尔值中的一个可能被设置为true 谢谢你的帮助 你可以把它放在你的控制器上。我假设表单位于controller#create上,您可以在其中: boolean = true if @model.value
谢谢你的帮助 你可以把它放在你的控制器上。我假设表单位于
controller#create
上,您可以在其中:
boolean = true if @model.value > x
boolean2 = true if @model.value < y
boolean=true如果@model.value>x
boolean2=如果@model.value
然后使用
@model将其保存在db上。save
假设这些布尔值是您启用的值的同一个模型的属性,您似乎可以在保存之前在回调中执行此操作:
class SomeModel < ActiveRecord::Base
# Your X & Y with some example values
X_VALUE = 5
Y_VALUE = 10
before_save do
self.boolean1 = self.value > X_VALUE
self.boolean2 = self.value < Y_VALUE
true # callback needs to return true, otherwise save will fail
end
end
class-SomeModelX_值
self.boolean2=self.value
使用上述实现,即使您更新了该值,正确的布尔值也将更改。我希望这有帮助,因为这是基于一些假设。如果不让我知道,我们会想办法的