2011-04-28 73 views
4

我想使用ActiveRecord :: SessionStore模块将会话数据存储在数据库中。我一直在寻找相当长的一段时间,但没有成功。要么我没有使用正确的搜索条件,要么我对一些非常明显的事情失明。在Sinatra会话中使用ActiveRecord :: SessionStore

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

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

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

+0

你有没有得到这个地方? – 2011-06-04 08:58:11

+0

@andicrook Nope,搬上Rails。 – Srisa 2011-06-21 10:32:14

回答

1

Sinatra是基于Rack的应用程序,允许添加中间件。中间件可以插入任何基于Rack的框架。 搜索参考config.ru在Sinatra Book

所以你会创建一个config.ru文件在你的应用程序的根。 并把这样的事情

require 'my_app' 
use ActiveRecord::SessionStore 
run MyApp 
2

我结束了通过添加actionpack宝石我的应用程序的Gemfile中,并要求action_dispatch解决uninitialized constant ActiveRecord::ActionDispatch错误。你可能也必须require 'logger'