impressionist(@object, nil, unique: [:session_hash])
调用印象派()插入记录的第一次,以后每次请求它说记录已经存在,因为它总是找到session_hash零值。它看起来不会将rails-4会话值记录到“session_hash”中。印象派不记录钢轨4会话值到session_hash
我使用Rails 4.1.6,红宝石2.1.3p242和印象派(1.5.1)
任何帮助?
impressionist(@object, nil, unique: [:session_hash])
调用印象派()插入记录的第一次,以后每次请求它说记录已经存在,因为它总是找到session_hash零值。它看起来不会将rails-4会话值记录到“session_hash”中。印象派不记录钢轨4会话值到session_hash
我使用Rails 4.1.6,红宝石2.1.3p242和印象派(1.5.1)
任何帮助?
我遇到了同样的问题。我最终使用条件语句来检查session_hash是否存在。
if session_hash.blank?
impressionist(@object)
else
impressionist(@object, nil, unique: [:session_hash])
end
这不能正确解决问题。问题在于Impressionist gem没有使用正确的会话呼叫。 – sergserg 2015-03-19 16:03:02
我认为你描述的问题与我的相同,我发现解决方案在这个开放问题下的git回购。
https://github.com/charlotte-ruby/impressionist/issues/177
你必须重写会话哈希方法为您的项目正在为ID的请求之前初始化会话。
ImpressionistController::InstanceMethods.class_eval do
def session_hash
session[:init] = true
request.session.id
end
end
你是如何解决这个问题的? – sergserg 2015-03-19 16:03:33