我正在尝试使用rails应用程序中的以下代码在会话中存储值
session[:key] = value
Run Code Online (Sandbox Code Playgroud)
我得到以下错误
TypeError (no _dump_data is defined for class Proc):
activesupport (3.2.9) lib/active_support/message_verifier.rb:53:in `dump'
activesupport (3.2.9) lib/active_support/message_verifier.rb:53:in `generate'
actionpack (3.2.9) lib/action_dispatch/middleware/cookies.rb:300:in `[]='
actionpack (3.2.9) lib/action_dispatch/middleware/session/cookie_store.rb:67:in `set_cookie'
rack (1.4.1) lib/rack/session/abstract/id.rb:330:in `commit_session'
rack (1.4.1) lib/rack/session/abstract/id.rb:206:in `context'
rack (1.4.1) lib/rack/session/abstract/id.rb:200:in `call'
actionpack (3.2.9) lib/action_dispatch/middleware/cookies.rb:341:in `call'
activerecord (3.2.9) lib/active_record/query_cache.rb:64:in `call'
activerecord (3.2.9) lib/active_record/connection_adapters/abstract/connection_pool.rb:479:in `call'
actionpack (3.2.9) lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
activesupport (3.2.9) lib/active_support/callbacks.rb:405:in `
Run Code Online (Sandbox Code Playgroud)
任何帮助都非常感谢.
我正在使用omniauth-facebook并尝试使用回形针显示个人资料图片.这是我用来将图片添加到用户模型的代码
def picture_from_url(url)
self.profile_pic =open(url)
end
Run Code Online (Sandbox Code Playgroud)
但是,它始终保存为stringio.txt.所以搜索这个行为我发现回形针允许回调,所以我在User模型中编写了以下方法来重命名文件名
def rename_profile_pic
self.profile_pic.instance_write :filename, "#{self.username}.jpg"
end
Run Code Online (Sandbox Code Playgroud)
并将其传递给回调
before_post_process :rename_profile_pic
Run Code Online (Sandbox Code Playgroud)
但这似乎没有帮助.
我有什么想法可以解决这个问题?
谢谢