设置一个新的Rails应用程序,我想使用Couchbase 2.0存储所有数据,并使用Devise进行用户身份验证,但我在ORM (对象关系映射)中遇到错误,这意味着Devise不知道如何与Couchbase对话。Couchbase是一个类似于Cassandra的NoSQL数据存储,所以我想知道是否有人配置了Devise来与Couchbase、Cassandra或其他NoSQL一起工作,并可以提供帮助?
这是一个简单的rails应用程序,使用
rails new myapp -T -O
已编辑Gemfile
,已添加
gem "couchbase"
gem "couchbase-model"
gem "devise"
设置Couchbase配置
rails generate couchbase:config
并使用数据库连接信息编辑config/couchbase.yml。
创建配置/初始化器/设备.rb的rails generate devise:install
查看config/initializers/devise.rb,我看到它自动放入require 'devise/orm/couchbase'
rails generate devise User
失败,出现以下错误:
/usr/local/rvm/gems/ruby-1.9.3-p362/gems/activesupport-3.2.10/lib/active_support/dependencies.rb:251:in `require': cannot load such file -- devise/orm/couchbase (LoadError)
Devise库中没有devise/orm/couchbase。
如果我将config/initializers/devise.rb中的couchbase orm行更改为
require 'devise/orm/active_record.rb'
当我尝试执行rails generate devise User
时,我得到了一个不同的错误
error couchbase [not found]
对于Couchbase和/或NoSQL数据存储,有没有想过该如何继续,或者是设计还没有准备好?
发布于 2013-01-06 15:22:21
没错,目前还没有人为Couchbase和Devise gem编写ORM适配器。我相信他们只有几个ORM,ActiveRecord/SQL是主要的ORM。你可以使用Sorcery gem,它允许集成/黑客,并与Couchbase一起工作。我自己还没有做过,但前几天我正在研究它。
如果我有机会为巫师制作指南,我会更新这个答案,这样你就会收到通知,或者直接在推特上关注我:http://twitter.com/scalabl3
https://stackoverflow.com/questions/14180644
复制相似问题