在模型中使用会话变量或以其他方式

时间:2014-12-31 12:24:54

标签: ruby-on-rails

我想从数据库表中选择username = session [:username]

的图像
Cover.where(username: session[:username]).select("image").last

但我无法在模型中使用会话。那么,在Rails中显示我的语句结果的另一种方法是什么?

1 个答案:

答案 0 :(得分:0)

这很简单,只需在模型中创建方法并将用户名作为参数传递并在控制器中调用它:

app/models/my_model.rb

# some code here

def self.my_method(username)
  Cover.where(username: username).select("image").last
end

# some code here

app/controllers/my_controlller.rb

# some code here

def my_action
  @record = MyModel.my_method(session[:username])
  # some logic here
end

# some code here