2012-05-11 11 views
0

下正常工作:ROR的初學者,爲什麼工作我的查詢的一個版本,而不是其他

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 ::錯誤:您的SQL語法錯誤; (*)FROM days_events_users WHERE(user_id => 37 AND days_events_id => 37 AND days_events_id =>'20')'在第一行檢查對應於您的MySQL服務器版本的手冊, > '20')

回答

1
already_joined=DaysEventsUser.where("user_id= ? AND days_events_id= ?",user,days_event) 
+0

恩,這是尷尬,謝謝。 – turbo2oh

相關問題