Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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 3中使用多个下拉列表而不是文本字段_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 在Rails 3中使用多个下拉列表而不是文本字段

Ruby on rails 在Rails 3中使用多个下拉列表而不是文本字段,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我目前正在构建我的第一个Rails 3应用程序,但不太清楚如何获得一项功能 我有一个温度场,但不是使用,我想有两个下拉列表。第一个下拉菜单允许选择97-99,而第二个下拉菜单允许选择0-9。用户选择并保存后,应将结果连接到例如98.2中 在Rails 3中实现这一点的最佳方法是什么?谢谢 您可以在使用的任何模型中创建两个属性。每个要使用的字段对应一个。然后,当您点击save时,您在模型中有了代码,并使用这些属性来形成温度属性。我建议创建两个虚拟属性,分别用于温度97-99和0-9的每个部分。然后

我目前正在构建我的第一个Rails 3应用程序,但不太清楚如何获得一项功能

我有一个温度场,但不是使用,我想有两个下拉列表。第一个下拉菜单允许选择97-99,而第二个下拉菜单允许选择0-9。用户选择并保存后,应将结果连接到例如98.2中


在Rails 3中实现这一点的最佳方法是什么?谢谢

您可以在使用的任何模型中创建两个属性。每个要使用的字段对应一个。然后,当您点击save时,您在模型中有了代码,并使用这些属性来形成温度属性。

我建议创建两个虚拟属性,分别用于温度97-99和0-9的每个部分。然后在模型上定义一个before_验证方法,该方法接受未持久化到数据库的这两个值,并相应地设置持久化到数据库的temp属性。通过这种方式,您可以像平常一样验证temp值,并像查询数据库中的任何其他常规值一样查询它。它还可以让你的视图代码看起来很简单。不过,还有其他方法可以做到这一点

Ryan Bates在虚拟属性方面有很好的放映效果。

这看起来很完美。谢谢。如果你感兴趣的话,我有一个后续问题。