Dio*_*lor 1 ruby-on-rails ruby-on-rails-3
我觉得相当容易,但不知何故文档缺乏这个(可能是它的简单).
我想显示表中的值,介于最小值和最大值之间.
我的代码是:
def something
@foo = Foo.where( :number => ((params[:min])..(params[:max])) )
respond_to do |format|
...
end
end
Run Code Online (Sandbox Code Playgroud)
难道我做错了什么?
你有没有检查过你的params是数字而不是字符串?
@foo = Foo.where(number: (params[:min].to_i)..(params[:max].to_i))
Run Code Online (Sandbox Code Playgroud)
Rails确实接受范围
# select all where number between 1 and 10
Foo.where number: 1..10
# between 1 and 9
Foo.where number: 1...10
Run Code Online (Sandbox Code Playgroud)