以下工作正常:
def self.already_joined?(days_event,user)
already_joined=DaysEventsUser.where(:user_id=>user, :days_events_id=>days_event)
if !already_joined.empty?
return true
end
end
但以下没有:
def self.already_joined?(days_event,user)
already_joined=DaysEventsUser.where("user_id=>? AND days_events_id=>?",user,days_event)
if !already_joined.empty?
return true
end
end
我的理解是第二个更安全,并且查询本身似乎可以正常工作,但是一旦我尝试测量它是否返回值,我就会收到错误消息:
Mysql2::Error: 你的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '=>37 AND days_events_id=>'20')' 附近使用正确的语法: SELECT COUNT(*) FROM days_events_users
WHERE (user_id=>37 AND days_events_id=> '20')