4

我想向我的应用程序添加操作文本。但它也设置了 Active Storage。我已经使用 CarrierWave,不需要 Active Storage。顺便说一句,我根本不需要在编辑器中上传文件。

4

2 回答 2

2

ActionStorage 是 ActionText 的硬依赖。

# rails/actiontext/actiontext.gemspec
# frozen_string_literal: true

version = File.read(File.expand_path("../RAILS_VERSION", __dir__)).strip

Gem::Specification.new do |s|
  s.platform    = Gem::Platform::RUBY
  s.name        = "actiontext"
  s.version     = version
  s.summary     = "Rich text framework."
  s.description = "Edit and display rich text in Rails applications."

  # ...
  s.add_dependency "activesupport", version
  s.add_dependency "activerecord",  version
  s.add_dependency "activestorage", version
  s.add_dependency "actionpack",    version

  s.add_dependency "nokogiri", ">= 1.8.5"
end

因此,您既可以直接使用它(ActionStorage 和 CarrierWave 可以共存),也可以使用任何其他所见即所得的替代方案,或者自己集成 Trix 和 Rails。

于 2020-01-08T17:12:18.900 回答
2

如果您根本不需要上传文件,那么避免添加 ActiveStorage 应该是相当容易的。

转到https://github.com/basecamp/trix并按照他们的说明如何在 Rails 应用程序中设置 Trix 编辑器。只是不要添加trix到您的 Gemfile 中,而是依赖于您从 Rails 中获得的内容。

如果您想添加文件上传,您需要玩覆盖trix-attachment-add事件并将文件 href 设置为永久 URL,Trix 总能在此找到它。

于 2020-06-29T09:52:45.660 回答