2009-05-20 3 views
0

Wo liegt der Fehler in dieser Ich kann es nicht sehen:Rails Syntaxfehler

news = News.find(:all, :conditions => [":simulation_id => session[:sim_id] AND :created_at > session[:last_login]"]) 

Antwort

5

Try this:

news = News.find(:all, :conditions => ["simulation_id = ? AND created_at > ?", session[:sim_id], session[:last_login]]) 
1

Ihre Bedingungen Zeichenfolge werden nicht bewertet, wie Sie erwarten:

[":simulation_id => session[:sim_id] AND :created_at > session[:last_login]"] 

Veränderung, die zu

["simulation_id = ? AND created_at > ?", session[:sim_id], session[:last_login]] 
+0

simulation_id '=', nicht '=>' –

+0

oops sein sollte - ja, festgelegt, dass – Codebeef

0

können Sie rufen auch Model.all statt Model.find(:all), die wie folgt aussehen würde:

news = News.all(:conditions => ["simulation_id = ? AND created_at > ?", session[:sim_id], session[:last_login]])