从ruby连接到cloudant NoSQL数据库

时间:2017-02-20 09:29:05

标签: ruby sinatra couchdb ibm-cloud cloudant

我无法使用couchrest_model库连接到bluemix上托管的cloudant NoSQL数据库。

我有类似的代码用ruby编写,从我的电脑上运行得很好(在本地运行,没有rails或sinatra):

require 'couchrest'

url = "https://blah-blah@url with credentials.com"
database_name = "testdb"
db = CouchRest.database!(url+"/"+database_name)
db.save_doc('_id':"dog",:name => 'MonthyPython', :date => Date.today)
doc = db.get('dog')

上面的代码成功地将数据写入我的数据库。然而,当我尝试用最新的'couchrest_model'宝石,我得到了

/Users/userpruser/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http.rb:933:in `connect_nonblock': SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: unknown protocol (OpenSSL::SSL::SSLError)

我查看了几页,但没有运气。那么使用红宝石(无轨道)或/和红宝石+ sinatra的正确方法是什么?我找到了这个食谱http://recipes.sinatrarb.com/p/models/couchdb,但我不知道如何对传统变量进行分类以及如何将它们组合在一起。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

看起来像是安装

gem install sinatra-config-file

然后要求

require sinatra/config_file

解决了我的问题。谢谢大家!