An ActiveStorage service plugin to store files in a PostgreSQL / MySQL / MSSQL database (for Rails 6/7)
MIT License
An Active Storage service upload/download plugin that stores files in a PostgreSQL or MySQL database. Experimental support also for MSSQL.
Main features:
Useful also with platforms like Heroku (due to their ephemeral file system).
gem 'active_storage_db'
(and execute: bundle
)bin/rails active_storage_db:install:migrations
(and execute: bin/rails db:migrate
)config/routes.rb
: mount ActiveStorageDB::Engine => '/active_storage_db'
config.active_storage.service = :db
db:
service: DB
Some utility tasks are available:
# list attachments ordered by blob id desc (with limit 100):
bin/rails 'asdb:list'
# search attachments by filename (or part of it)
bin/rails 'asdb:search[some_filename]'
# download attachment by blob id (retrieved with list or search tasks) - the second argument is the destination:
bin/rails 'asdb:download[123,/tmp]'
If you use this component just star it. A developer is more motivated to improve a project when there is some interest.
Or consider offering me a coffee, it's a small thing but it is greatly appreciated: about me.
The gem is available as open source under the terms of the MIT License.