我在Ruby on Rails应用程序中使用了两个数据库;一个是应用程序的数据库,而另一个是独立的数据库,Rails不受控制。Ruby on Rails和db:fixtures:load - 它可以忽略某些模型吗?
问题是,当将装置加载到开发环境时,它试图从与开发数据库的连接到独立数据库的表上运行DELETE语句,这显然错误了。
我不希望Rails试图做任何事情,但读独立数据库 - 我特别不希望它试图删除表。
有没有一种简单的方法来告诉Rails在加载灯具时忽略第二个数据库的模型?
UPDATE:澄清,Rails的似乎认为从独立数据库中的表是发展连接的一部分,虽然我已经指定使用establish_connection
模型类的正确连接。另外需要注意的是,所有的模型类都可以根据需要按照要求从script/console
进行精确的操作。
我与环保试了一下发布前使用导出设置变量;根据你的建议,我也尝试过这种方式。同样的错误。 – 2010-01-28 20:29:26
您可以编写自己的工具来将* .yml中的数据加载到所需的数据库,这就是我所能提供的信息。 GL – 2010-01-28 20:45:12
'rake db:fixtures:load RAILS_ENV = test'(not testing)for me working for me。 – 2011-09-27 17:16:15