2013-10-09 93 views
1

我有一個運行在heroku上的Rails應用程序,並且我正在用mongolab(X和Y)託管的兩個dbs連接。錯誤16550:「未經授權查詢」mongolab

我配置了兩個包含連接字符串的heroku env變量。 當我在Y上查詢所有工作正常,但是當我在X數據庫上查詢時,它給了我錯誤16550:「未授權查詢X.table」。

我已經正確設置了這兩個連接的env變量,並且還有一個有效的用戶訪問X db。

如果我連接的外殼都可以正常工作。

我該如何解決這個問題?

這裏是軌道錯誤消息:

{"status":"500", 
"error":"The operation: #<Moped::Protocol::Query\n @length=88\n @request_id=4\n @response_to=0\n 
@op_code=2004\n @flags=[:slave_ok]\n 
@full_collection_name=\"X.table\"\n 
@skip=0\n @limit=0\n 
@selector={\"_id\"=>\"5252c92521e4af681a000002\"}\n 
@fields=nil>\n 
failed with error 16550: \"not authorized for query on X.table\"\n\n 
See https://github.com/mongodb/mongo/blob/master/docs/errors.md\nfor details about this error."} 

回答

1

我解決了這一點,如果有人來這裏同樣的問題:看看你的表格模型,如果在我的情況下,它是「stored_in」另一個數據庫你必須在那裏指定在datbase.yml上的uri = evn變量的會話