我只是想完成本教程
http://jimneath.org/2011/03/24/using-redis-with-ruby-on-rails.html#redis_and_rails
当我将此代码放在lib / user.rb或app / models / user.rb中时:
class User < ActiveRecord::Base
# follow a user
def follow!(user)
@redis.multi do
...
我收到此错误:
ActiveRecord::StatementInvalid: Could not find table 'users'
from /Users/jeremysmith/.rvm/gems/ruby-1.9.2-p180/gems/activerecord- 3.0.5/lib/active_record/connection_adapters/sqlite_adapter.rb:295:in `table_structure'
请注意,@ redis正在工作,我根本就没有使用sqlite,所以我不确定为什么要引用它。我的Gemfile中包含sqlite,但我的项目中没有其他地方。
答案 0 :(得分:2)
您仍然需要一个普通的sqlite / mysql数据库来存储您的用户,它只是您在redis中存储的某些部分。确保您具有正确的迁移并发出rake db:migrate
。
我还注意到您使用了@redis
而不是$redis
您确定这是按预期工作的吗?