rails proyecto migraciones datos crear consultas conexion conectar con ruby-on-rails database activerecord mongoid

ruby on rails - proyecto - Establecer la conexión predeterminada de la base de datos Rails



crear proyecto ruby on rails postgresql (3)

Mi aplicación Rails tiene su propia base de datos MySql (y requiere la gema mysql2) pero también necesita conectarse con una base de datos externa MongoDB para un modelo en particular (y por eso he incluido mongoid y bson_ext en el Gemfile). Ahora cuando intento generar una migración para un nuevo modelo, me dice que

$ rails g migration CreateLocations error mongoid [not found]

Cuando generé el modelo de ubicación, incluía Mongoid :: Document, por lo que Rails obviamente piensa que está utilizando la base de datos externa como mi almacén de datos principal.

databse.yml

development: adapter: mysql2 encoding: utf8 reconnect: false database: associalize_development pool: 5 username: root password: socket: /tmp/mysql.sock

mongoid.yml:

development: host: pearl.mongohq.com port: 27019 username: asfasdf password: sadfasdf database: app4574678 test: host: pearl.mongohq.com port: 27019 username: asdfadhasdfa password: hadsadfas database: app4574678 production: host: pearl.mongohq.com port: 27019 username: asdfdfsasda password: afdasdfdasdf database: app4574678

ACTUALIZACIÓN Modelo que utiliza Mongo.

class ExternalMongoModel include Mongoid::Document field :title field :long_title field :deal_type field :merchandise_type field :market_id field :market_name field :market_location, type: Array field :featureType field :country_code field :subtitle field :offer_ends_at field :price field :value field :merchant_type field :content field :merchant index( [[:division_latlon, Mongo::GEO2D]], background: true ) end


Agregue esto al bloque de aplicaciones en su config / application.rb:

config.generators do |g| g.orm :active_record end

(solución encontrada here )


Primero verifique que el bloque a continuación esté presente en el archivo config / application.rb en su aplicación de rieles

config.generators do |g| g.orm :active_record end

Si no agrega entonces, o si no puede ejecutar

rails g active_record:migration


Si no desea cambiar config / application.rb, puede usar esto mientras genera el modelo:

rails generate active_record:migration

Si cambia el archivo application.rb, para invocar un generador de mongoides, por ejemplo, para un modelo de ''contactos'', uno usaría:

rails g mongoid:model contacts

( enlace de solución )