将变量放入字符串中,它不起作用?

1 ruby ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

我有一个存储在session[:login]我想要在SQL查询中使用的字符串,所以我写了这个.

@users = User.find(:all, :conditions => ['user = "#{session[:login]}"']) 
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用?谢谢!

Fle*_*oid 6

您可以通过以下方式重建查询:

@users = User.find(:all, :conditions => ['user = ?', session[:login]]) 
Run Code Online (Sandbox Code Playgroud)

但这个看起来更好:

@users = User.where(user: session[:login])
Run Code Online (Sandbox Code Playgroud)