Ter*_*ber 13 ruby activerecord ruby-on-rails
我希望以规范的方式来做到这一点.我的谷歌搜索已经缩短了.我有一个ActiveRecord模型应该映射到不同于应用程序其余部分的数据库.我想将新配置存储在database.yml文件中.
我知道应该调用establish_connection,但是不清楚在哪里.这是我到目前为止所得到的,它不起作用:
class Foo < ActiveRecord::Base
establish_connection(('foo_' + ENV['RAILS_ENV']).intern)
end
Run Code Online (Sandbox Code Playgroud)
Pri*_*iit 21
此外,最好将使用不同数据库的模型子类化,例如:
class AnotherBase < ActiveRecord::Base
self.abstract_class = true
establish_connection "anotherbase_#{RAILS_ENV}"
end
Run Code Online (Sandbox Code Playgroud)
在你的模型中
class Foo < AnotherBase
end
Run Code Online (Sandbox Code Playgroud)
当您需要添加访问另一个数据库的后续模型时,它非常有用.
嘿.我是正确的!更干净:
class Foo < ActiveRecord::Base
establish_connection "foo_#{ENV['RAILS_ENV']}"
end
Run Code Online (Sandbox Code Playgroud)
伟大的职位在pragedave.pragprog.com.
| 归档时间: |
|
| 查看次数: |
3286 次 |
| 最近记录: |