ruby-on-rails - 从 Rails 类实例获取信息
问题描述
我对 Ruby 和 Rails 很陌生,所以我确信这真的很简单,但这是我的事。
我得到request
这样的:
request = Request.where(id: params[:id_request])
所以我在控制台中记录了它,它返回了我想要的,但是我如何访问其中的一些字段呢?
我试过这个:
request.required_people
这显然不起作用,但我如何从中required_people
得到request
?
解决方案
当您调用 时where
,您将返回项目集合而不是单个记录,即使 where 查询仅返回一个结果。由于此集合是ActiveRecord::Relation
我们可以调用.first
以获取集合中的第一项的实例:
request.first.required_people
但是由于您正在寻找一条记录,因此您可以使用.find
它将模型的主键id
作为参数:
request = Request.find(params[:id_request])
那会让你做
request.required_people
如果您真的想查看差异,请尝试同时执行 where 和 find 查询。您会看到 where 查询在返回值上有几个额外的括号。
推荐阅读
- postgresql - 使用查询更新表给了我这个错误:错误:用作表达式的子查询返回的不止一行
- sql-server - 当 row_number() 下降时使用 min()
- python - lambda 函数结果在数学上是错误的
- c# - 使用自定义分析器提升 MultiMatch 字段
- c - 如何创建宽度和高度与连接窗口不同的 XCB 图像?
- pandas - 在不公开工作表的情况下,将 Cloud 函数中的 Google Sheet 读入 Pandas DataFrame
- momentjs - Moment Js时间格式无法正常工作
- reactjs - 编译失败 - 为 React 安装 Formik 库时找不到模块
- bash - 如何让 Jq 总是在数组中返回
- kotlin - 数据类接受一个参数和枚举来创建第二个参数