Tôi đang sử dụng đá quý Rails 3 và Mongoid. Nhưng tôi cần phải điền vào một combobox với danh sách các cơ sở dữ liệu mongodb. Trong shell mongodb chúng ta có thể liệt kê các cơ sở dữ liệu với lệnh "show dbs". Cũng có các lệnh getDBNameList() và db.getCollectionNames() trong trình điều khiển mongodb. Nhưng tôi không thể tìm ra cách sử dụng các lệnh này từ một ruby trên ứng dụng đường ray.Cách lấy danh sách cơ sở dữ liệu mongodb và danh sách bộ sưu tập từ một ứng dụng ruby trên đường ray
Ngoài ra tôi tự hỏi; nếu tôi có thể nhận được cơ sở dữ liệu và danh sách các bộ sưu tập bằng cách sử dụng mongoid gem. Bởi vì tôi chắc chắn rằng tôi đã đọc rằng mongoid hỗ trợ bằng cách sử dụng nhiều hơn một cơ sở dữ liệu, nhưng tôi nghĩ rằng đó là mô hình phụ thuộc.
Vì vậy, bạn nghĩ gì; là có bất kỳ giải pháp hoặc tôi phải sử dụng đá quý mong-ruby-driver, không mongoid.
chúng ta có thể cấu hình tất cả các cơ sở dữ liệu trong Mongoid (thông qua mongoid.yml) dbs = Mongoid.databases dbs.each do | db | db.collections end – user622773
connection = Mongoid.master.connection connection.database_names # => Lấy một mảng các tên db = connection.database ("name") # => Lấy một đối tượng db cụ thể db.collections # => Lấy một mảng bộ sưu tập ##### Tôi nghĩ đây là cách tốt nhất; Nhờ durran (từ github). – user622773
Điều đó dường như không hoạt động đối với tôi (trên mongoid 3.x): 'NoMethodError: phương thức undefined \' master 'cho Mongoid :: Config: Module' – turboladen