- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 RailsAdmin v0.6.8 和 PaperTrail 进行版本控制。
我的每个 has_paper_trail 模型的列表、显示、创建和编辑 View 都包含版本属性。事实上,创建和编辑 View 允许添加/删除版本,这对我来说没有意义。除了为每个模型的每个 View 使用 exclude_fields :versions 之外,是否有全局方法可以做到这一点?
谢谢!
最佳答案
方法一
如果所有模型都继承了一个抽象类(例如:“ApplicationRecord”)
您可以创建一个新文件(例如: app/models/concerns/exclude_versions.rb
):
module ExcludeVersions
extend ActiveSupport::Concern
included do
rails_admin do
configure :versions do
hide
end
end
end
end
class ApplicationRecord < ActiveRecord::Base
self.abstract_class = true
has_paper_trail
def self.inherited(subclass)
subclass.include(ExcludeVersions)
super
end
end
config/initializers/rails_admin.rb
中添加这样的代码
Rails.application.eager_load! if Rails.env.development?
ActiveRecord::Base.descendants.each do |imodel|
### next if ['ApplicationRecord'].include?(imodel.name) ### if all models are inherited an abstract class, please uncomment this line, or some strange error will happen
config.model "#{imodel.name}" do
configure :versions do
hide
end
end
end
关于ruby-on-rails - 如何从 RailsAdmin 的 View 中排除 PaperTrail 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31533071/
我在互联网上发现 Papertrail 可以让你 log using ANSI colors . 这对我来说意义重大,因为我的 node.js 应用程序上有很多日志,添加更多颜色有助于我了解当有很多人
我在我的站点中使用 paper_trail 来实现撤消/重做功能,当我在 version 上调用 reify.save 时遇到问题在 save 上创建新的 PaperTrail::Version。 有
我有一个项目的电子表格,我将其转换为 CSV 并使用自定义导入脚本将其导入到基于 Rails 的应用程序中。 电子表格为每条记录包含一行,但有些行包含前一行的不同版本。 导入 CSV 时,我目前使用“
我正在使用 paper_trail gem 作为博客系统来存储文章的版本。但是,我不需要在文章被销毁后保留该文章的任何版本。 当模型实例被销毁时,如何删除它的所有版本?我只在文档中看到一种全局删除版本
我认为除了声明 has_paper_trail 之外,没有一种简单的方法可以将 PaperTrail 应用于所有模型。在每一个。 我想要完成的是将 PaperTrail(或其他 gem,如 Audit
我查看了 how to store meta data for a paper trail versioned object这似乎很容易。问题是我希望能够在不对对象进行任何实际更改的情况下存储该元数据
我正在使用 Papertrail gem在我的项目中,并进行了广泛的搜索以尝试找到如何执行以下操作。 我想要做的是找到我的对象的版本,其中特定属性成为特定值,即 object.versions.whe
我在 Rails 4 应用程序中使用 paper_trail gem,并且想要设置默认排序顺序。 papertrail 没有模型,只有 Controller 和初始化器。 我可以把它放在哪里?我必须为
我有一个模型,它同时使用 Carrierwave 和 PaperTrail 进行版本控制。 我还使用 config.remove_previously_stored_files_after_updat
我正在创建一个应用程序,在创建和更新文章时需要管理员批准。我使用纸质记录来完成这项工作,存储对文章的每次更新。 更新文章时,“已发布”字段设置为 false。由于我想显示文章的最新批准/发布版本,我需
我在使用 PaperTrail 时遇到问题(Rails 对象的自动版本控制)与 RSpec 测试一起使用。通常我希望我的测试在没有 PaperTrail 版本控制的情况下运行,但有一些测试我希望打开
在我正在开发的应用程序中,我们使用 PaperTrail 不仅可以跟上原始用户所做的更改,还可以跟上对有权更改授权配置文件的“贡献者”角色的用户所做的更改. 我不能放在一起的一件是不允许未经批准的 p
在 paper_trail 中,一个注意事项是仅恢复第一级关联,如果关联中有关联,这是一个问题 如果我有... class Student true)来恢复删除的出勤率和学生,然后分别pointlo
我尝试将生产和暂存中的 Rails (3.2.17) 应用程序的所有日志记录移动到 papertrail。现在我正在尝试在 config/initializers/sidekiq.rb 中为 side
CreateVersions migration由 PaperTrail 提供说 MySQL users should manually add fractional seconds precisio
我正在尝试使用 pm2 作为我的流程管理器,让我的 Node 应用程序日志显示在 papertrail 上。 到目前为止,我已将 pm2 日志记录到 process.json 中定义的文件中。我想将其
我正在尝试向 PaperTrail::Version 添加验证,这将防止敏感数据存储在版本表中。这个想法是,如果您忘记清理模型中的 has_paper_trail 调用,就会出现很多明显的错误。 如果
目前,我已经使用 PaperTrail 实现了一个 Rails 数据审计应用程序。我为每个 create、update 和 destroy 操作添加了一个新版本。 问题是,我的模型中有一个 after
我被困住了。我一直在试图弄清楚如何在具有 papertrail 的模型上包含关联更改( has_many , has_many through )。我想调用MyModel.versions.first
我正在使用 paper_trail用于对我的模型进行版本控制的 gem。 到目前为止,我的模型依赖于 info_for_paper_trail ApplicationController 中的方法:
我是一名优秀的程序员,十分优秀!