Rails管理员:如何隐藏活动存储模型?
Rails Admin: How to Hide Active Storage models?
我正在使用 Active Storage 和 Cloudinary 来存储我的一个模型的一些图像,但是在添加这个之后,Active Storage 开始出现在 Rails Admin 中一个专门用于它的导航选项卡中:
及其在仪表板中的模型:
我想删除两者。我尝试了这些东西但没有成功:
首先尝试仅声明我想要出现的模型
config.included_models = [User, Notebook, Tag, Category, Part]
但由于我在笔记本中使用附件,它会抱怨:
然后我试着隐藏:
config.model 'ActiveStorage' do
list do
visible false
end
navigation do
visible false
end
end
也可以直接带模特
config.model 'Attachment' do
list do
visible false
end
navigation do
visible false
end
end
config.model 'Blob' do
list do
visible false
end
navigation do
visible false
end
end
或者也许可以做一些像
这样的因式分解
ActiveStorage::Base.descendants.each do |imodel|
config.model "#{imodel.name}" do
visible false
end
end
正如我们可以使用 ActiveRecord 做的那样 Creating a Custom Field Factory ?
你快明白了,需要它
config.model 'Blob' do
visible false
end
选项b)
在模型本身 blob.rb
class Blob < ApplicationRecord
rails_admin do
visible false
end
end
在您的 rails_admin.rb
中添加以下内容:
config.model 'ActiveStorage::Blob' do
visible false
end
因为 Blob class 来自 ActiveStorage。
同样适用于附件 class。
在Rails6中我做了以下
RailsAdmin.config do |config|
config.model 'ActiveStorage::Blob' do
visible false
end
config.model 'ActiveStorage::Attachment' do
visible false
end
config.model 'ActiveStorage::VariantRecord' do
visible false
end
end
在rails6我用了
config.excluded_models = %w[ActiveStorage::Blob ActiveStorage::Attachment ActiveStorage::VariantRecord]
我正在使用 Active Storage 和 Cloudinary 来存储我的一个模型的一些图像,但是在添加这个之后,Active Storage 开始出现在 Rails Admin 中一个专门用于它的导航选项卡中:
及其在仪表板中的模型:
我想删除两者。我尝试了这些东西但没有成功:
首先尝试仅声明我想要出现的模型
config.included_models = [User, Notebook, Tag, Category, Part]
但由于我在笔记本中使用附件,它会抱怨:
然后我试着隐藏:
config.model 'ActiveStorage' do
list do
visible false
end
navigation do
visible false
end
end
也可以直接带模特
config.model 'Attachment' do
list do
visible false
end
navigation do
visible false
end
end
config.model 'Blob' do
list do
visible false
end
navigation do
visible false
end
end
或者也许可以做一些像
这样的因式分解ActiveStorage::Base.descendants.each do |imodel|
config.model "#{imodel.name}" do
visible false
end
end
正如我们可以使用 ActiveRecord 做的那样 Creating a Custom Field Factory ?
你快明白了,需要它
config.model 'Blob' do
visible false
end
选项b) 在模型本身 blob.rb
class Blob < ApplicationRecord
rails_admin do
visible false
end
end
在您的 rails_admin.rb
中添加以下内容:
config.model 'ActiveStorage::Blob' do
visible false
end
因为 Blob class 来自 ActiveStorage。
同样适用于附件 class。
在Rails6中我做了以下
RailsAdmin.config do |config|
config.model 'ActiveStorage::Blob' do
visible false
end
config.model 'ActiveStorage::Attachment' do
visible false
end
config.model 'ActiveStorage::VariantRecord' do
visible false
end
end
在rails6我用了
config.excluded_models = %w[ActiveStorage::Blob ActiveStorage::Attachment ActiveStorage::VariantRecord]