到目前为止,我可以在控制台中执行此操作以使其正常工作:
PaperTrail::Version.table_exists?
=> false
PaperTrail::Version.octopus_establish_connection Octopus.config[Rails.env][:ms]
PaperTrail::Version.table_exists?
=> true
我在哪里以及如何投放:
PaperTrail::Version.octopus_establish_connection Octopus.config[Rails.env][:ms]
我试图将它放在app/models/papertrail_version.rb
和config/initializers/papertrail.rb
中,但是在模型中没有加载,并且在初始化程序中它失败了,因为Octopus尚未捆绑,我想我可以将它捆绑在初始化程序中,关于如何尽可能简单的建议。
我尝试使用初始化程序但没有运气:
require 'octopus'
PaperTrail::Version.octopus_establish_connection Octopus.config[Rails.env][:ms]
尝试运行rails console时我得到了这个:
/vagrant/config/initializers/papertrail_version.rb:3:in
`<top (required)>': undefined method `[]' for nil:NilClass (NoMethodError)
答案 0 :(得分:0)
在app/models/paper_trail/version.rb
:
module PaperTrail
class Version < ActiveRecord::Base
octopus_establish_connection Octopus.config[::Rails.env][:ms]
end
end
注意我必须在::
Rails.env
由于Rails加载进程require Rails.root.join 'app/models/paper_trail/version'