我是 ruby on Rails 的新手。我正在使用 mongomapper,我想为每个帐户创建单个数据库。假设如果用户将登录,新数据库将使用登录用户的用户名创建,如果已经创建,则它将切换到该数据库。
我正在模型中尝试使用以下代码:
用户类
包括 MongoMapper::Document
包括 ActionView::Helpers
连接(Mongo::Connection.new('localhost', 27017))
set_database_name "#{当前用户.用户名}
键:名称,字符串
键:电子邮件、字符串、:必需 => true
键:用户名,字符串,:必需=> true,:唯一=> true
结束
但我没有获得用户名。如果我将此代码“connection(Mongo::Connection.new('localhost', 27017))”放入 Controller 中,则会出现错误。有什么方法可以从应用程序 Controller 建立新的数据库连接。等待解决方案,提前致谢。
最佳答案
我得到了我们可以从 Controller 创建新数据库的解决方案:
MongoMapper.database = "my_db"
如果它已经创建,那么它将切换到“my_db”数据库,否则它将创建新的数据库并切换到该数据库。
关于ruby-on-rails - 每个帐户创建不同的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37114866/