Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.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 使用Find查询_Ruby On Rails_Ruby_Postgresql - Fatal编程技术网

Ruby on rails 使用Find查询

Ruby on rails 使用Find查询,ruby-on-rails,ruby,postgresql,Ruby On Rails,Ruby,Postgresql,我是RubyonRails新手,我有一个使用postgresql的数据库 我已尝试使用此命令查找半径列的值,其中user\u id=current\u user.id UserPreference.find(current_user.id).radius 数据库表是这样设置的 id | user_id | radius | 901 899 10 902 900 20 903 901 30 对于我使

我是RubyonRails新手,我有一个使用postgresql的数据库

我已尝试使用此命令查找半径列的值,其中user\u id=current\u user.id

UserPreference.find(current_user.id).radius
数据库表是这样设置的

id   |  user_id  |  radius  |
901      899          10
902      900          20
903      901          30
对于我使用的查询:

假设用户_id=901

UserPreference.find(current_user.id).radius

这个查询给了我10个我希望它给我30个

你应该通过
用户id找到

UserPreference.find_by_user_id!(current_user.id).radius
或者更好地使用:

#user.rb:
类用户 30

虽然没有严格反对,但Rails 4中推荐的新方法是将find_by与哈希一起使用。看

因此,@Marek Lipka的第一个建议如下:

UserPreference.find_by!(user_id: current_user.id).radius

非常感谢。。。还在学ruby。这是一种我只需要学习的简化语言。我从php来到RubyonRails。大不相同
UserPreference.find_by!(user_id: current_user.id).radius