Appare nel post:

Come posso mapparlo a questo (e viceversa):
"//127.0.0.1:4200/uploads/default/original/1X/abcafdf0e1d9262d515075420e4d940718796a5d.jpeg"
appare come proprietà url di un Upload.
?
david
(David Taylor)
25 Aprile 2025, 8:09am
2
Useresti questa funzione:
e poi cercheresti lo SHA1 nel database per trovare il record di caricamento.
2 Mi Piace
Ah, quindi quello è SHA1? Che stupido!
1 Mi Piace
david
(David Taylor)
25 Aprile 2025, 8:12am
4
Sì, sia l’URL breve che quello normale includono SHA1.
La differenza è che l’URL lungo utilizza la versione originale codificata in esadecimale, che corrisponde a quella nel database. L’“URL breve” upload:// è una rappresentazione base62 dello stesso hash, in modo che utilizzi meno caratteri.
1 Mi Piace
Mi dispiace, ho capito.
Quindi c’è:
short-url nel Post
url - URL originale lungo da caricare.
SHA1 generato durante il caricamento.
e mi hai appena dato il modo per trovare l’url dallo short-url
1 Mi Piace
Scusa, è presto, quindi se il mio obiettivo è creare l’short-url, devo transcodificare SHA1 in base62?
david
(David Taylor)
25 Aprile 2025, 8:25am
7
Dove lo stai facendo? Nell’app Rails?
Se è così, puoi generare gli URL usando upload.short_url e upload.url.
Per trovare un record di upload in primo luogo, puoi fare:
sha1 = Upload.sha1_from_long_url(...)
# o
sha1 = Upload.sha1_from_short_url(...)
# poi
upload = Upload.find_by(sha1: sha1)
1 Mi Piace
Sì, Rails. Sto caricando dal back-end.
OMGoodness:
Upload.last.short_url
"upload://fkO7C9M7SLRhXjEiFTOSUJIdCgJ.jpeg"
Mi dispiace David, me l’ero completamente perso!!
Almeno questo Topic chiarisce tutto per chiunque sia interessato.
Grazie per tutte le informazioni.
Upload
.where(dominant_color: nil)
.order("id desc")
.first(count)
.each { |upload| upload.calculate_dominant_color! }
end
private
def short_url_basename
"#{Upload.base62_sha1(sha1)}#{extension.present? ? ".#{extension}" : ""}"
end
end
# == Schema Information
#
# Table name: uploads
#
# id :integer not null, primary key
# user_id :integer not null
# original_filename :string not null
2 Mi Piace
system
(system)
Chiuso
25 Maggio 2025, 8:27am
9
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.