mirror of
https://0xacab.org/sutty/sutty
synced 2024-11-16 11:41:41 +00:00
permitir cargar archivos con la misma key
podemos tener sitios distintos con la misma llave identificatoria. ahora permitimos solo una llave por cada sitio distinto. si subimos un archivo duplicado en un mismo sitio el error va a seguir siendo el mismo.
This commit is contained in:
parent
0b06bf3541
commit
def4402313
2 changed files with 12 additions and 1 deletions
|
@ -68,7 +68,7 @@ class MetadataFile < MetadataTemplate
|
|||
when ActionDispatch::Http::UploadedFile
|
||||
site.static_files.last if site.static_files.attach(value['path'])
|
||||
when String
|
||||
if (blob_id = ActiveStorage::Blob.where(key: key_from_path).pluck(:id).first)
|
||||
if (blob_id = ActiveStorage::Blob.where(key: key_from_path, service_name: site.name).pluck(:id).first)
|
||||
site.static_files.find_by(blob_id: blob_id)
|
||||
elsif path? && pathname.exist? && site.static_files.attach(io: pathname.open, filename: pathname.basename)
|
||||
site.static_files.last.tap do |s|
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
# Cambia el índice único para incluir el nombre del servicio, de forma
|
||||
# que podamos tener varias copias del mismo sitio (por ejemplo para
|
||||
# test) sin que falle la creación de archivos.
|
||||
class ChangeBlobKeyUniquenessToIncludeServiceName < ActiveRecord::Migration[6.1]
|
||||
def change
|
||||
remove_index :active_storage_blobs, %i[key], unique: true
|
||||
add_index :active_storage_blobs, %i[key service_name], unique: true
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue