Erscheint in Beitrag:

Wie kann ich es damit (und umgekehrt) zuordnen:
"//127.0.0.1:4200/uploads/default/original/1X/abcafdf0e1d9262d515075420e4d940718796a5d.jpeg"
erscheint als url-Eigenschaft eines Upload.
?
david
(David Taylor)
25. April 2025 um 08:09
2
Sie würden diese Funktion verwenden:
und dann die SHA1 in der Datenbank nachschlagen, um den Upload-Datensatz zu finden.
2 „Gefällt mir“
Ah, das ist also die SHA1? Verdammt!
1 „Gefällt mir“
david
(David Taylor)
25. April 2025 um 08:12
4
Ja, sowohl die Kurz-URL als auch die reguläre URL enthalten die SHA1.
Der Unterschied besteht darin, dass die lange URL die ursprüngliche hexadezimale Version verwendet, die mit der in der Datenbank übereinstimmt. Die „Kurz-URL“ upload:// ist eine Base62-Darstellung desselben Hashs, sodass sie weniger Zeichen verwendet.
1 „Gefällt mir“
Entschuldigung, richtig verstanden.
Es gibt also einen:
short-url im Beitrag
url - ursprüngliche lange URL zum Hochladen.
SHA1 generiert während des Uploads.
und Sie haben mir gerade den Weg gegeben, die url aus der short-url zu finden.
1 „Gefällt mir“
Entschuldigung, es ist noch früh am Tag, also wenn mein Ziel ist, die short-url zu erstellen , muss ich SHA1 in Base62 transkodieren?
david
(David Taylor)
25. April 2025 um 08:25
7
Machst du das in der Rails-App?
Wenn ja, kannst du die URLs mit upload.short_url und upload.url generieren.
Um einen Upload-Datensatz zu finden, kannst du Folgendes tun:
sha1 = Upload.sha1_from_long_url(...)
# oder
sha1 = Upload.sha1_from_short_url(...)
# dann
upload = Upload.find_by(sha1: sha1)
1 „Gefällt mir“
Ja, Rails. Ich lade vom Backend hoch.
OMGoodness:
Upload.last.short_url
"upload://fkO7C9M7SLRhXjEiFTOSUJIdCgJ.jpeg"
Entschuldige David, das habe ich total übersehen!!
Zumindest klärt dieses Thema alles für Interessierte.
Danke für all die Infos.
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 „Gefällt mir“
system
(system)
Geschlossen,
25. Mai 2025 um 08:27
9
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.