Ruby on rails 我们怎样才能更换新的?从rails sql查询
我怎样才能替换?使用:email,这样我就不需要在query中两次传递current_user.email 但是,Ruby on rails 我们怎样才能更换新的?从rails sql查询,ruby-on-rails,ruby,Ruby On Rails,Ruby,我怎样才能替换?使用:email,这样我就不需要在query中两次传递current_user.email 但是,where的参数必须包含一个散列,其中必须存在电子邮件密钥 您可以使用一个数组作为参数(当然,您可以省略括号)来检查 或者,可以在模板中使用命名占位符,然后 将哈希作为数组的第二个元素传递。名单上的名字 模板将替换为哈希中的相应值 看一看的文档–甚至有一个例子是email=?和email=:email这能回答你的问题吗? scope :accessible_by, -> (cu
where
的参数必须包含一个散列,其中必须存在电子邮件密钥
您可以使用一个数组作为参数(当然,您可以省略括号)来检查
或者,可以在模板中使用命名占位符,然后
将哈希作为数组的第二个元素传递。名单上的名字
模板将替换为哈希中的相应值
看一看的文档–甚至有一个例子是
email=?
和email=:email
这能回答你的问题吗?
scope :accessible_by, -> (current_user) { where("loc_primary_email= ? OR loc_backup_email= ? ",current_user.email, current_user.email) }
scope :accessible_by, -> (current_user) { where("loc_primary_email = :email OR loc_backup_email = :email ", email: current_user.email) }
User.where(["name = :name and email = :email", { name: "Joe", email: "joe@example.com" }])
# SELECT * FROM users WHERE name = 'Joe' AND email = 'joe@example.com';