Rails控制台,如何查看对象属性
Rails console, how to see object attributes
在 Rails 控制台中
u = User.where(id: 1)
"he find the user with id = 1, but then"
u.email
我收到这个错误:
NoMethodError: undefined method `email' for #<User::ActiveRecord
为什么 rails 控制台总是在寻找方法而不是属性?
如何查看特定属性?
我这样做是因为我在应用程序中有一个方法可以通过 user_id 找到协调员,就像这样
user_id = current_user.id
coordinator = Coordinator.where(user_id: user_id)
course_id = coordinator.course_id
我收到这个错误
where
returns 一个 ActiveRecord::Relation
对象,它是一个数组。 email
只会存在于单个对象上。请尝试 User.find()
。否则,请尝试 User.where().first
取回单个对象。
编辑:
正如评论者指出的那样,在这种特殊情况下,您可能更愿意使用 find_by()
方法而不是 where
。
在 Rails 控制台中
u = User.where(id: 1)
"he find the user with id = 1, but then"
u.email
我收到这个错误:
NoMethodError: undefined method `email' for #<User::ActiveRecord
为什么 rails 控制台总是在寻找方法而不是属性? 如何查看特定属性?
我这样做是因为我在应用程序中有一个方法可以通过 user_id 找到协调员,就像这样
user_id = current_user.id
coordinator = Coordinator.where(user_id: user_id)
course_id = coordinator.course_id
我收到这个错误
where
returns 一个 ActiveRecord::Relation
对象,它是一个数组。 email
只会存在于单个对象上。请尝试 User.find()
。否则,请尝试 User.where().first
取回单个对象。
编辑:
正如评论者指出的那样,在这种特殊情况下,您可能更愿意使用 find_by()
方法而不是 where
。