Ich habe ein Django-Modell für ein vom Benutzer hochgeladenes Foto. Es enthält ein Feld definiert alsCustomize ImageField.image.url
class Photo(models.Model):
image = models.ImageField(upload_to='photo_image_files')
@property
def name(self):
return filename_without_extension
...
und settings.py definiert
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
Dies bedeutet, Bilder in /media/photo_image_files/
gespeichert werden. Ich möchte JPEG-Dateien unter /jpeg/:filename
zugänglich machen und den tatsächlichen Pfad zu den Bildern von Besuchern verbergen. Ich habe die entsprechende Ansicht und URL definiert. Wie auch immer, jetzt {{ photo.image.url }}
zeigt vorhersehbar auf /media/photo_image_files/filename.jpg
. Zur Umgehung des Problems schließen ich Bilder als
<img src="/jpeg/{{ photo.name }}" />
Aber das bedeutet, dass ich die Stelle zweimal, in urls.py angeben und in der Vorlage. Wie kann ich die URL anpassen?
Tat Dank. – texnic