sorl-url is 'n out-of-band verwerking vir sorl-miniatuur thumbnails.
Installasie & Setup
Installasie
Installasie is so maklik soos neut installeer sorl-url al die nuutste weergawe is altyd beskikbaar op GitHub.
Setup
1. Voeg sorl-url vir jou settings.INSTALLED_APPS.
2. Voeg url (r '^ thumbnails /', sluit ('sorl_url.urls')) om jou URL opset.
3. Stel jou standaard (sien Gebruik hieronder).
Jy kan meer oor sorl-miniatuur, sy vereistes en hoe dit geïnstalleer en gekonfigureer by Lees die Docs lees.
Gebruik
Die kern workflow is om gebruik gebou deur 'n sjabloontagcode naam image_url in die sorl_url sjabloontagcode biblioteek.
sorl_url nie beelde nie direk dien. Dit genereer hulle as sorl-miniatuur sou (stoor dit in 'n kas via settings.THUMBNAIL_STORAGE) en dan lei om na die URL van die gegenereerde beeld.
Sjabloon Tags
Die primêre oproep van sorl_url is deur die image_url sjabloontagcode, wat gebruik maak van die volgende basiese sintaks:
{% Image_url BRON FIELD_NAME MEETKUNDE [key1 = VAL1 key2 = VAL2 ...]%}
of:
{% Image_url BRON FIELD_NAME MEETKUNDE [key1 = VAL1 key2 = VAL2 ...] as VAR%}
& Nbsp; Die beeld URL is {{VAR}}.
{% Leë%}
& Nbsp; Hierdie blok is opsioneel.
{% Endimage_url}
'N voorbeeld aanroeping kan wees:
<% Vrag image_url%>
Wat dalk as lewer (linebreaks bygevoeg):
Vir 'n volledige lys van beskikbare opsies, raadpleeg asseblief die dokumentasie vir sorl-miniatuur se miniatuur sjabloontagcode.
URL Struktuur
sorl-url genereer URLs van die vorm: /prefix/MODEL_NAME/FIELD_NAME/KEY.ext?config=OPTIONS
voorvoegsel is bepaal deur die plek waar die sorl-url uitsig is ingesluit in die URLConf
OPTIONS is 'n opset insluitend die grootte en ander opsies onderteken en verborge deur die django.core.signing module beskryf in URL Argumente hieronder.
Let wel: die config navraag string argument is verpligtend. Versuim om 'n config sal lei tot 'n 404 te verskaf.
URL Argumente
Image opsies word geslaag deur middel van die config navraag string argument. Die waardes word verborge, maar nie enscrypted. Hulle is serialized, saamgeperste en onderteken deur django.core.signing.
Default opsies gespesifiseer in SORL_URL_CONFIG en ander sorl instellings is nie ingesluit in die navraag string. Dit is egter die handtekening gesoute met 'n verskeidenheid van eienskappe, insluitend die onderliggende lêernaam en 'n gemors van alle relevante instellings om te verseker dat as onderliggende eienskappe en instellings opgedateer, sal die URL sowel verander. Let daarop dat dit beteken dat 'n verandering te SORL_URL_CONFIG, byvoorbeeld, sal lei in alle URL's word opgedateer. Dit mag of mag nie lei tot nuwe beelde wat gegenereer word deur sorl (afhangende van wat verander is).
Ontfouting: Om maklik sien watter argumente word geslaag vir die lewering, eenvoudig gestel settings.THUMBNAIL_DEBUG waar en voeg & eggo = Getrou aan enige gegenereer URL te sien watter opsies word geslaag.
instel Stellings
Die beskikbare opsies en standaard word beheer deur die SORL_URL_CONFIG omgewing.
SORL_URL_CONFIG moet 'n woordeboek-agtige voorwerp met sleutels wat ooreenstem met die MODEL_NAME URL komponent en 'n woordeboek soos die waarde van die model opset wat nie.
Daarbenewens SORL_URL_PERMANENT_REDIRECT (verstek: Vals) kan gebruik word om die tipe aanstuur wat gebruik word om te beheer.
Model Configuration
Elke model opset bied die volgende opsies:
- Model: óf 'n model klas of die Django-styl stippellyn naam (app_label.ModelName) (vereis)
- Velde: 'n lys van die eienskappe van die model wat deur hierdie opset blootgestel behoort te word; Alternatiewelik word 'n 2-tal van die formaat (attr_name, opsies) waar opsies is 'n woordeboek met verstek geslaag word om die sorl backend se get_thumbnail metode (vereis)
- Backend: die sorl backend, as 'n string wat die module pad, om gebruik te word (opsioneel; verstek na `` sorl.thumbnail.default.backend``)
- Key_field: die veld gebruik word in voorwerp soektogte vir die sleutel gedeelte van die URL (opsioneel; verstek na `` id``)
- Key_filter: 'n transformasie funksie toegepas word op die sleutel URL komponent om te verseker dat dit behoorlik voorberei vir die ORM (opsioneel; verstek na `` lambda x: int (x) ``)
- Opsies: 'n woordeboek met verstek opsies geslaag word om die sorl backend se get_thumbnail metode. Individuele velde kan hierdie opsies te omseil. (Opsioneel; verstek na `` {} ``)
Opset Voorbeelde
'N Minimale opset kan sien:
SORL_URL_CONFIG = {
& Nbsp; 'profiele': {
& Nbsp; 'model': 'profiles.Profile',
& Nbsp; 'velde': ['avatar'],
& Nbsp;}
}
Die bogenoemde opset sou beteken dat die volgende URL geldig sou wees: /prefix/profiles/avatar/1.png?config=CONFIG
'N meer gevorderde configuration kan sien:
SORL_URL_CONFIG = {
& Nbsp; 'profiele': {
& Nbsp; 'model': 'profiles.Profile',
& Nbsp; 'velde': [
& Nbsp; ('avatar', {
& Nbsp; 'formaat': 'PNG',
& Nbsp; 'oes': 'top',
& Nbsp; 'upscale': True
& Nbsp;}),
& Nbsp; ('agtergrond': {
& Nbsp; 'formaat': 'JPEG',
& Nbsp; "kwaliteit": 90,
& Nbsp; 'kleurruimte': 'GRAY'
& Nbsp;}
& Nbsp;)
& Nbsp;],
& Nbsp; 'key_field': 'user__username',
& Nbsp; 'key_filter': Geen # Die verstek is lambda x: int (x),
& Nbsp; #, maar niemand impliseer 'n no-op (lambda x: x)
& Nbsp;}
}
Die bogenoemde opset sou beteken dat die volgende URL's sal blootgestel word:
- /prefix/profiles/avatar/1.png?config=CONFIG
- /prefix/profiles/background/1.jpg?config=CONFIG
Requirements:
- Python
- sorl-miniatuur
Kommentaar nie gevind