Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby NoMethodError-未定义的方法`时间戳(timestamp)排序(u order)';用于升级Rails 4.2后的文件跟踪问题_Ruby_Ruby On Rails 4.2_Paper Trail Gem - Fatal编程技术网

Ruby NoMethodError-未定义的方法`时间戳(timestamp)排序(u order)';用于升级Rails 4.2后的文件跟踪问题

Ruby NoMethodError-未定义的方法`时间戳(timestamp)排序(u order)';用于升级Rails 4.2后的文件跟踪问题,ruby,ruby-on-rails-4.2,paper-trail-gem,Ruby,Ruby On Rails 4.2,Paper Trail Gem,当我将rails 3.2迁移到rails 4.2时,我使用paper_trail跟踪跨国更改,并发现以下问题: NoMethodError-未定义的方法“timestamp\u sort\u order” 我通过在initializer paper_trail.rb文件中添加以下行来修复此问题 PaperTrail::Rails::Engine.eager_load! PaperTrail.config.track_associations = false PaperTrail::Rails

当我将rails 3.2迁移到rails 4.2时,我使用paper_trail跟踪跨国更改,并发现以下问题:

NoMethodError-未定义的方法“timestamp\u sort\u order”


我通过在initializer paper_trail.rb文件中添加以下行来修复此问题

PaperTrail::Rails::Engine.eager_load!
PaperTrail.config.track_associations = false

PaperTrail::Rails::Engine.eager_load!

module PaperTrail

  class Version < ActiveRecord::Base
    .....
  end

end
请参阅我的最终初始化器/paper_trail.rb文件

PaperTrail::Rails::Engine.eager_load!
PaperTrail.config.track_associations = false

PaperTrail::Rails::Engine.eager_load!

module PaperTrail

  class Version < ActiveRecord::Base
    .....
  end

end

我在rails 6.0.0beta3上得到了这个,因为我修补了papertrail,忘记添加
papertrail::VersionCancern
,例如:

模块书面记录
类版本<::ActiveRecord::Base
包括书面记录::VersionConcern
结束
结束

PaperTrail::Rails::Engine.eager\u加载没有为我修复它


查看直接在
ActiveRecord::Base
模型上调用它的方法,它是在Rails 6中的
PaperTrail::VersionCancern

上定义的,现在首选的方法是创建模型,不要将模型代码放在初始值设定项中。这就是我正在使用的

module PaperTrail
  class Version < ::ActiveRecord::Base
    include PaperTrail::VersionConcern

    belongs_to :user, foreign_key: :whodunnit
  end
end
模块书面记录
类版本<::ActiveRecord::Base
包括书面记录::VersionConcern
属于:用户,外键::whodunnit
结束
结束

您好,此解决方案不适合我。我复制了完全相同的paper_trail.rb文件,我使用的是ruby'2.1.2',gem'rails',4.0.1',请检查你的paper_trail版本,我使用的是paper_trail 4.0.0。也许你已经习惯了最新的尝试使用paper_trail 4.0.0,希望它能起作用。嗨,rameshwar,我能修复它。我做错的不是创建一个纸面文档初始值设定项,而是为它创建了一个模型。嗨,rameshwar,这个解决方案只有在初始值设定项配置中声明模块纸面文档时才有效。但是如果我在app/models/paper_trail/version中创建模块PaperTrail,它就会失败。嗨@rameshwar,你能帮我解决这个问题吗?