0

我正在使用 Rails,在控制器中,我有一个名为 log_cons 的数据库,它有一个全部填写的条目,第一列为“id”,值为“1”

@log_cons = LogCon.all
puts @log_cons[1].id

这将输出到浏览器:

Called id for nil, which would mistakenly be 4 -- if you really wanted the id of nil, use object_id

并在终端打印一个空行。

这可能是什么潜在的原因?

4

2 回答 2

1

LogCon.find()将返回一个ActiveRecord对象,而不是数组。

因此,您可以像这样获取 id:

@log_cons = LogCon.all
puts @log_cons[0].id

或者

puts @log_cons.first.id
于 2013-04-08T00:11:26.890 回答
1

如果您想要所有记录,请执行

@log_cons = LogCon.all

然后访问第一个做

puts @log_cons[0].id
于 2013-04-08T00:15:34.910 回答