在Sinatra中使用ActiveRecord :: SessionStore进行会话

时间:2011-04-28 11:22:52

标签: ruby-on-rails session activerecord sinatra

我想使用ActiveRecord :: SessionStore模块将会话数据存储在数据库中。我一直在寻找这个没有成功的时间。要么我没有使用正确的搜索条件,要么我对一些非常明显的东西视而不见。

我在我的代码中使用了此语句require ActiveRecord::SessionStore::Session来启用具有活动记录的会话处理。它带有错误未初始化的常量ActiveRecord :: ActionDispatch 。我假设我已经安装了actiondispatch模块。我是对的吗?

请记住,这是我第一次使用Ruby-Sinatra。我来自PHP。

那么,我应该使用什么来使Sinatra使用ActiveRecord使用基于数据库的会话?

2 个答案:

答案 0 :(得分:2)

我最终通过将uninitialized constant ActiveRecord::ActionDispatch gem添加到我的应用程序的Gemfile并要求actionpack来解决action_dispatch错误。您可能还需要require 'logger'

答案 1 :(得分:1)

Sinatra是一个基于Rack的应用程序,允许添加中间件。中间件可以插入任何基于Rack的框架。 在Sinatra Book

中搜索config.ru的引用

所以你要在你的应用程序的根目录中创建一个config.ru文件。 并把这样的东西

require 'my_app'
use ActiveRecord::SessionStore
run MyApp