Ruby / Rails:给实例变量赋值



当这些属性值位于包含通常模型属性值但也包含其他键值对(不属于模型)的大散列(session[:some_big_hash])中时,将属性值分配给(模型)实例变量的最简单方法是什么?

情况是这样的:

# 1. Get the user from the db:
@user = User.where(id: 1).first
# 2. Add some additional data from a hash inside the session
@user = @user.somehow_extract_the_values_for_the_model_from(session[:some_big_hash])

首先为会话设置值时,应该使用

session[:user_specific_attributes] = {...}

而不是直接将它们添加到会话哈希的"根"。

之后,你可以这样写:

@user.foo(session[:user_specific_attributes])

相关内容

  • 没有找到相关文章

最新更新