BalisesetfiltresdegabaritintégrésDocumentationdeDjangoDjango

Thewebframeworkforperfectionistswithdeadlines.

Contrlelecomportementactueldel’échappementautomatique.Cettebaliseaccepteonouoffcommeparamètreetceladéterminesil’échappementautomatiqueestactifdansleblocconcerné.Leblocdoitêtreferméparlabalisefermanteendautoescape.

Exempled’utilisation:

Ignoretoutcequisetrouveentre{%comment%}et{%endcomment%}.Unenotefacultativepeutêtreinséréedanslapremièrebalise.Parexemple,celapeutêtreutilepourdonnerlesraisonsd’unboutdecodequel’onplaceencommentaire.

Renderedtextwith{{pub_date|date:"c"}}

{%comment"Optionalnote"%}

Commentedouttextwith{{create_date|date:"c"}}

{%endcomment%}Lesbalisescommentnepeuventpasêtreimbriquées.

Affichel’undesesparamètresàchaqueapparitiondelabalise.Lepremierparamètreestaffichélorsdelapremièreapparition,lesecondparamètrelorsdelasecondeapparition,etainsidesuite.Unefoisquetouslesparamètresontétéutilisés,labaliserecommenceaveclepremierparamètreetl’affichedenouveau.

Cettebaliseestparticulièrementutiledansuneboucle:

Vouspouvezaussiutiliserdesvariables.Parexemple,sivousavezdeuxvariablesdegabarit,rowvalue1etrowvalue2,vouspouvezalternerentreleursvaleurscommececi:

{%foroinsome_list%}...{%endfor%}Lesvariablesinclusesdanslecycleserontéchappées.Vouspouvezdésactiverl’échappementautomatiqueavec:

{%foroinsome_list%}...{%endfor%}Vouspouvezmélangerdesvariablesetdeschanes:

............Vouspouvezutiliserautantdevaleursquenécessairedansunebalisecycle,séparéespardesespaces.Lesvaleursentouréesdeguillemetssimples(')oudoubles(")sonttraitéescommedeschaneslittérales,alorsquelesvaleurssansguillemetssonttraitéescommedesvariablesdegabarit.

Pardéfaut,lorsquevousutilisezlemot-cléasaveclabalisecycle,l’utilisationde{%cycle%}quidémarrelecycleproduiraelle-mêmelapremièrevaleurducycle.Celapeutposerproblèmesivoussouhaitezexploiterlavaleurdansuneboucleimbriquéeouungabaritinclus.Sivousnevoulezquedéclarerlecyclemaissansproduirelapremièrevaleur,vouspouvezajouterunmot-clésilentcommederniermot-clédelabalise.Parexemple:

Lorsquelemot-clésilentestutilisédansunedéfinitiondecycle,celas’appliqueautomatiquementàtouteslesutilisationsultérieuresdecettebalisecyclespécifique.Legabaritsuivantn’afficherien,mêmesilesecondappelà{%cycle%}neprécisepassilent:

Affichetoutunlotd’informationsdedébogage,ycomprislecontexteactueletlesmodulesimportés.

Indiquequecegabaritétendungabaritparent.

Cettebalisepeutêtreutiliséededeuxfaons:

Enprincipe,lenomdugabaritestrelatifaurépertoireracineduchargeurdegabarits.Unparamètretextuelpeutaussiêtreuncheminrelatifcommenantpar./ou../.Parexemple,enadmettantlastructurederépertoiressuivante:

dir1/template.htmlbase2.htmlmy/base3.htmlbase1.htmlDanstemplate.html,lescheminssuivantsseraientvalides:

Notezqueleblocinclustoutletexteentrelesbalisesfilteretendfilter.

{%filterforce_escape|lower%}ThistextwillbeHTML-escaped,andwillappearinalllowercase.{%endfilter%}Note

AffichelepremierparamètrequinevautpasFalse.N’afficheriensitouteslesvaleurstransmisesvalentFalse.

{%firstofvar1var2var3%}C’estl’équivalentde:

{%ifvar1%}{{var1}}{%elifvar2%}{{var2}}{%elifvar3%}{{var3}}{%endif%}VouspouvezaussiutiliserunechanelittéralecommevaleurdereplidanslecasoùtouteslesvariablesspécifiéesvalentFalse:

{%firstofvar1var2var3"fallbackvalue"%}Cettebaliseéchappeautomatiquementlesvaleursdesvariables.Vouspouvezdésactiverl’échappementautomatiqueavec:

{%autoescapeoff%}{%firstofvar1var2var3"fallbackvalue"%}{%endautoescape%}Ousiseulementcertainesvariablesdoiventêtreéchappées,vouspouvezemployer:

{%firstofvar1var2|safevar3"fallbackvalue"|safe%}Vouspouvezutiliserlasyntaxe{%firstofvar1var2var3asvalue%}pourstockerlerésultatdansunevariable.

Effectueunebouclesurchaqueélémentd’uneliste,rendantdisponiblelavaleurdansunevariabledecontexte.Parexemple,pourafficherunelistedesathlètescontenusdansathlete_list:

    {%forathleteinathlete_list%}
  • {{athlete.name}}
  • {%endfor%}
Vouspouvezeffectueruneboucleinverséesurunelisteenutilisant{%forobjinlistreversed%}`.

Sivousdevezeffectuerunebouclesurunelistedelistes,vouspouvezisolerlesvaleursdechaquesous-listedansdesvariablesindividuelles.Parexemple,sivotrecontextecontientunelistedecoordonnées(x,y)appeléepoints,voicicommentvouspouvezafficherlalistedespoints:

{%forx,yinpoints%}Thereisapointat{{x}},{{y}}{%endfor%}Celapeutaussiêtreutilesivousavezbesoind’accéderauxélémentsd’undictionnaire.Parexemple,sivotrecontextecontientundictionnairedata,lecodesuivantaffichelesclésetlesvaleursdecedictionnaire:

Labouclefordéfinituncertainnombredevariablesdisponiblesàl’intérieurdelaboucle:

Labaliseforaccepteuneclausefacultative{%empty%}dontlecontenuestaffichésilalisteenparamètreestvideouestintrouvable:

    {%forathleteinathlete_list%}
  • {{athlete.name}}
  • {%empty%}
  • Sorry,noathletesinthislist.
  • {%endfor%}
Lecodeci-dessusestéquivalent,maispluscourt,pluspropreetpeut-êtreplusrapidequececi:

{%ifathlete_list%}Numberofathletes:{{athlete_list|length}}{%elifathlete_in_locker_room_list%}Athletesshouldbeoutofthelockerroomsoon!{%else%}Noathletes.{%endif%}Dansl’exempleci-dessus,siathlete_listn’estpasvide,lenombred’athlètesestaffichéparlavariable{{athlete_list|length}}.

Commevouspouvezlevoir,labaliseifaccepteuneouplusieursclauses{%elif%}ouuneclause{%else%}dontlecontenuestaffichésitouteslesconditionsprécédentesontéchoué.Cesclausessontfacultatives.

{%ifathlete_listandcoach_list%}Bothathletesandcoachesareavailable.{%endif%}{%ifnotathlete_list%}Therearenoathletes.{%endif%}{%ifathlete_listorcoach_list%}Therearesomeathletesorsomecoaches.{%endif%}{%ifnotathlete_listorcoach_list%}Therearenoathletesortherearesomecoaches.{%endif%}{%ifathlete_listandnotcoach_list%}Therearesomeathletesandabsolutelynocoaches.{%endif%}L’utilisationàlafoisdeandetdeordanslamêmebaliseestpermise,tenantcomptequeandauneplusgrandeprioritéqueor.Parexemple:

{%ifathlete_listandcoach_listorcheerleader_list%}serainterprétécomme:

égalité.Exemple:

Identitéd’objet.Testesideuxvaleurssontlemêmeobjet.Exemple:

{%ifa==borc==dande%}…serainterprétéecomme:

LesopérateursdecomparaisonnepeuventpasêtreenchanéscommeenPythonouennotationmathématique.Parexemple,aulieud’écrire:

{%ifa>b>c%}(WRONG)vousdevezécrire:

Vérifiesiunevaleurachangédepuisl’itérationprécédented’uneboucle.

Labalisedebloc{%ifchanged%}estemployéedansuneboucle.Elleprésentedeuxutilisationspossibles.

Vérifiesonproprecontenuàaffichercomparéàsonétatprécédentetn’affichelecontenuques’ilachangé.Parexemple,lecodesuivantafficheunelistedejours,n’affichantlemoisquelorsqu’ilchange:

{%fordateindays%}{%ifchangeddate.date%}{{date.date}}{%endifchanged%}{%ifchangeddate.hourdate.date%}{{date.hour}}{%endifchanged%}{%endfor%}Labaliseifchangedaccepteaussiuneclausefacultative{%else%}quiaffichesoncontenusilavaleurn’apaschangé:

Lenomdugabaritpeutêtresoitunevariable,soitunechanefixeentreguillemets,simplesoudoubles.

Cetexempleinclutlecontenudugabarit"foo/bar.html":

Cetexempleinclutlecontenudugabaritdontlenomestcontenudanslavariabletemplate_name:

{%includetemplate_name%}Lavariablepeutaussiêtretoutobjetpossédantuneméthoderender()acceptantuncontexte.CelapermetderéférencerunobjetTemplatecompilédansvotrecontexte.

Ungabaritinclusestaffichédanslecontextedugabaritquil’inclut.Cetexempleproduitlerésultat"Hello,John!":

Contexte:lavariablepersoncontient"John"etlavariablegreetingcontient"Hello".

Gabarit:

{%include"name_snippet.html"%}Legabaritname_snippet.html:

{{greeting}},{{person|default:"friend"}}!Vouspouveztransmettreducontextesupplémentaireaugabaritenutilisantdesparamètresnommés:

{%include"name_snippet.html"withperson="Jane"greeting="Hello"%}Sivoussouhaitezrendrelecontexteavecseulementlesvariablesindiquées(oumêmesansvariabledutout),utilisezl’optiononly.Aucuneautrevariablen’estalorsdisponibledanslegabaritinclus:

{%include"name_snippet.html"withgreeting="Hi"only%}Note

Lesblocssontévaluésavantd’êtreinclus.Celasignifiequ’ungabaritquiinclutdesblocsd’unautrecontiendradesblocsquiontdéjàétéévaluésetproduits,etnonpasdesblocsquipeuventêtresurchargés,parexempleparungabaritd’extension.

Chargeunlotdebalisesdegabaritpersonnalisées.

Parexemple,legabaritsuivantchargetouteslesbalisesettouslesfiltresenregistrésdanssomelibraryetdansotherlibrarysetrouvantdanslepaquetpackage:

{%loadsomelibrarypackage.otherlibrary%}Vouspouvezaussichargerdemanièresélectivedesfiltresoudesbalisesàpartird’unebibliothèqueavecleparamètrefrom.Danscetexemple,lesbalises/filtresdegabaritfooetbarsontchargésàpartirdesomelibrary:

Affichedutextelatinaléatoireloremipsum.C’estpratiquepourproduiredesdonnéesd’exempledanslesgabarits.

Utilisation:

{%lorem[count][method][random]%}Labalise{%lorem%}peutêtreutiliséeaveczéro,un,deuxoutroisparamètres.Cesparamètressont:

Exemples:

Exemple:

Itis{%now"jSFYH:i"%}Notezquevouspouvezéchapperparbarreobliqueinverseunechanedeformatsivoussouhaitezutiliserlavaleurbrute.Danscetexemple,fetosonttousdeuxéchappésparbarreobliqueinverse,sinonilsseraientchacuninterprétéscommeunechanedeformatpourafficherrespectivementl’annéeetl’heure:

Itisthe{%now"jS\o\fF"%}LerésultataffichéestItisthe4thofSeptember.

Note

Lameilleurefaond’illustrercettebalisecomplexeestdedonnerunexemple:disonsquecitiescontientunelistedevillesreprésentéespardesdictionnairescontenantlesclés"name","population"et"country":

Vouspouvezutiliserlabalise{%regroup%}pourgrouperlalistedesvillesparpays.L’extraitdecodedegabaritsuivanteffectuecela:

{%regroupcitiesbycountryascountry_list%}

    {%forcountryincountry_list%}
  • {{country.grouper}}
      {%forcityincountry.list%}
    • {{city.name}}:{{city.population}}
    • {%endfor%}
  • {%endfor%}
Parcouronscetexemple.{%regroup%}acceptetroisparamètres:lalistequevoussouhaitezregrouper,l’attributsurlequelgrouperetlenomdelalisterésultante.Danscecas,nousregrouponslalistecitiesparl’attributcountryetnommonslerésultatcountry_list.

{%regroupcitiesbycountryascountry_list%}

    {%forcountry,local_citiesincountry_list%}
  • {{country}}
      {%forcityinlocal_cities%}
    • {{city.name}}:{{city.population}}
    • {%endfor%}
  • {%endfor%}
Notezque{%regroup%}netriepascequ’ilreoit!Notreexemplecomptesurlefaitquelalistecitiesestpréalablementtriéeparcountry.Silalistecitiesn’étaitpastriéeparpays,leregroupementauraitnavementaffichéplusd’ungroupeparpays.Parexemple,silalistecitiescontenaitceci(notezquelespaysnesontpasregroupés):

Lasolutionlaplussimpleàceproblèmeestdes’assurerauniveaudelavuequelesdonnéessonttriéesd’aprèslecritèrequevousvoulezutiliserpourl’affichage.

{%regroupcitiesbyget_country_displayascountry_list%}{{country.grouper}}contientmaintenantlapartievaleurdeschoixchoicespluttqueleurclé.

JoséMourinho

ThibautCourtois

JohnTerry

EdenHazard

CarloAncelotti

ManuelNeuer

ThomasMüller

Remarquezcommelepremierblocsetermineavecclass="odd"etlenouveauquicommenceavecclass="odd".Sanslabalise{%resetcycle%},lesecondblocauraitcommencéavecclass="even".

Ilestaussipossiblederéinitialiserlesbalisescyclenommées:

SupprimelesespacesentrelesbalisesHTML.Lescaractèresdetabulationetlessautsdelignesontaussiconsidéréscommedesespaces.

Commelesystèmedesgabaritsn’apasdeconceptd”échappement,sivoussouhaitezafficherdespartiesdesyntaxeutiliséesdanslesbalisesdegabarit,vousdevezutiliserlabalise{%templatetag%}.

Leparamètreindiquequelleséquencedegabaritvousvoulezafficher:

C’estunemanièred’afficherdeslienssanstrahirleprincipeDRY(nepasserépéter),évitantdedevoirfigerlesURLdanslesgabarits:

Parexemple,supposonsquevousavezunevue,app_views.client,dontlaconfigurationd’URLaccepteunidentifiantdeclient(ici,client()estuneméthodedanslefichierdevuesapp_views.py).Lalignedeconfigurationd’URLpourraitressembleràceci:

SivousaimeriezrécupéreruneURLsansl’afficher,vouspouvezeffectuerunappelunpeudifférent:

Cettesyntaxe{%url...asvar%}neproduirapasd’erreursilavueestmanquante.Enpratique,vousallezutilisercelapourdesliensversdesvuesquisontfacultatives:

Avertissement

N’oubliezpasd’entourerlemotifd’URLnamepardesguillemets,sinonlavaleurserainterprétéecommeunevariabledecontexte!

Empêchelemoteurdegabaritsd’effectuerlerenduducontenudecettebalisedebloc.

C’estsouventemployépourpermettreunecouchedegabaritJavaScriptquientreenconflitaveclasyntaxeDjango.Parexemple:

{%verbatim%}{{ifdying}}Stillalive.{{/if}}{%endverbatim%}Vouspouvezaussidésignerunebalisedefermeturespécifique,permettantl’utilisationde{%endverbatim%}commefaisantpartieducontenunonrendu:

Parexemple:

Sithis_valuevaut175,max_value200etmax_width100,lalargeurdel’imagedel’exempleci-dessusserade88pixels(parceque175/200=0,875;0,875*100=87,5quiestarrondià88).

{%withtotal=business.employees.count%}{{total}}employee{{total|pluralize}}{%endwith%}Lavariablecréée(dansl’exempleci-dessus,total)estuniquementdisponibleentrelesbalises{%with%}et{%endwith%}.

Vouspouvezcréerplusd’unevariabledecontexte:

{%withalpha=1beta=2%}...{%endwith%}Note

L’ancienformatplusverbeuxesttoujoursprisencharge:{%withbusiness.employees.countastotal%}

Ajouteleparamètreàlavaleur.

{{value|add:"2"}}Sivaluevaut4,lerésultatsera6.

Cefiltreessaied’aborddeforcerlesdeuxvaleursàdesnombresentiers.Sicelaéchoue,ilessaietoutdemêmed’additionnerlesdeuxvaleurs.Celafonctionneaveccertainstypesdedonnées(chanes,listes,etc.)etéchoueavecd’autres.Sicettedeuxièmetentativeéchoue,lerésultatseraunechanevide.

Parexemple,sinousavons:

{{first|add:second}}etquefirstvaut[1,2,3]etsecondvaut[4,5,6],lerésultatsera[1,2,3,4,5,6].

Leschanespouvantêtreforcéesennombreentierserontadditionnéesetnonpasconcaténées,commedanslepremierexempleci-dessus.

Ajoutedesbarresobliquesinversesavantlesguillemets.UtilepouréchapperdeschanesenCSV,parexemple.

{{value|addslashes}}Sivaluecontient"J'utiliseDjango",lerésultatsera"J\'utiliseDjango".

Metenmajusculelepremiercaractèredelavaleur.Silepremiercaractèren’estpasunelettre,cefiltren’aaucuneffet.

{{value|capfirst}}Sivaluecontient"django",lerésultatsera"Django".

Centrelavaleurdansunchampdelargeurdonnée.

Enlèvetouteslesvaleursenparamètredelachaneàfiltrer.

{{value|cut:""}}Sivaluecontient"Chaneavecdesespaces",lerésultatsera"Chaneavecdesespaces".

Metenformeunedateselonleformatindiqué.

CescaractèresdeformatnesontpasutilisésdansDjangoendehorsdesgabarits.IlsontétéconuspourêtrecompatiblesavecPHPafindefaciliterlatransitionauxrédacteurshabituésàcelangage.

Chanesdeformatdisponibles:

{{value|date:"SHORT_DATE_FORMAT"}}lerésultatseraletexte"09/01/2008"(leformat"SHORT_DATE_FORMAT"delalocaleesfourniavecDjangoest"d/m/Y").

Lorsqu’aucunechanedeformatn’estindiquée,c’estleformatDATE_FORMATquiestutilisé.Avecdesréglagessemblablesàl’exempleprécédent:

{{value|date}}produit9deEnerode2008(lachanedeformatDATE_FORMATdelalocaleesétantr'j\d\eF\d\eY').

{{value|default:"nothing"}}Sivaluecontient""(lachanevide),lerésultatseranothing.

Si(etseulementsi)valuevautNone,leparamètrededefaultestaffiché.Sinon,c’estlavaleurvaluequiestaffichée.

{{value|default_if_none:"nothing"}}SivaluevautNone,lerésultatseranothing.

Accepteunelistededictionnairesetrenvoiecettelistetriéeparlaclédonnéeenparamètre.

{{value|dictsort:"name"}}Sivaluecontient:

{%forbookinbooks|dictsort:"author.age"%}*{{book.title}}({{book.author.name}}){%endfor%}Sibooksest:

*Alice(Lewis)*1984(George)*Timequake(Kurt)dictsortpeutaussitrierunelistedelistes(outoutautreobjetimplémentant__getitem__())pardesélémentsàunindicedonné.Parexemple:

{{value|dictsort:0}}Sivaluecontient:

RenvoieTruesilavaleurestdivisibleparleparamètre.

{{value|divisibleby:"3"}}Sivaluecontient21,lerésultatsera

échappeducodeHTML.Plusparticulièrement,ileffectuelesremplacementssuivants:

{{value|escapejs}}Sivaluecontient"testing\r\njavascript\'string"escaping",lerésultatsera"testing\\u000D\\u000Ajavascript\\u0027string\\u0022\\u003Cb\\u003Eescaping\\u003C/b\\u003E".

Metenformelavaleursousformedetailledefichierhumainementlisible(parex.'13Kio','4.1Mio','102octets',etc).

{{value|filesizeformat}}SIvaluecontient123456789,lerésultatsera117.7Mio.

TaillesdefichiersetunitésSI

Strictementparlant,filesizeformatneseconformepasauSystèmeinternationald’unitésquirecommandel’usagedeKiB,MiB,GiB,etc.lorsquelatailled’octetestcalculéeenpuissancesde1024(cequiestlecasici).Djangoutilisepluttlesnomsd’unitéstraditionnelles(KB,MB,GB,etc.)correspondantauxnomsquisontutiliséspluscouramment(NdT:latraductionenfranaisutiliselespréfixesSIKio,Mio,etc.).

Renvoielepremierélémentdelaliste.

{{value|first}}Sivaluecontientlaliste['a','b','c'],lerésultatsera'a'.

Quandleparamètreestabsent,cefiltrearronditunnombreàvirguleflottanteàunchiffreaprèslavirgule,maisseulements’ilyaunepartiedécimaleàafficher.Parexemple:

Quandunparamètrenombreentieresttransmis,floatformatarronditlenombreaunombredechiffresaprèslavirguleindiquéparleparamètre.Parexemple:

Ilpeutêtreparticulièrementutiledetransmettreleparamètre0(zéro)cequiarronditlenombreàvirguleaunombreentierleplusproche.

Sileparamètrepasséàfloatformatestnégatif,lenombreseraarrondiaunombredechiffresaprèslavirguleindiqué,maisseulements’ilyaunepartiedécimaleàafficher.Parexemple:

L’utilisationdefloatformatsansparamètreestéquivalentàl’utilisationdefloatformatavecleparamètre-1.

{{value|get_digit:"2"}}SIvaluecontient123456789,lerésultatsera8.

ConvertitunIRI(InternationalizedResourceIdentifier)enunechanepouvantêtreinclusedansuneURL.C’estnécessairequandvousessayezd’insérerdeschanescontenantdescaractèresnonASCIIdansdesURL.

{{value|iriencode}}Sivaluecontient"test=1&moi=2",lerésultatsera"test=1&moi=2".

Concatènelesélémentsd’unelisteavecunechanedeliaison,commePythonlefaitavecstr.join(list).

{{value|join:"//"}}Sivaluecontientlaliste['a','b','c'],lerésultatsera"a//b//c".

TransformeunobjetPythonenJSONdemanièresre,enveloppédansunebaliseOnpeutaccéderauxdonnéesrésultantesenJavaScriptcommececi:

{"hello":"world\\u003C/script\\u003E\\u0026amp;"}CeciestcompatibleavecunepolitiqueContentSecuritystrictequiinterditl’exécutiondescriptdanslespages.Celamaintientégalementuneséparationpropreentredesdonnéespassivesetducodeexécutable.

Renvoieledernierélémentdelaliste.

{{value|last}}Sivaluecontientlaliste['a','b','c','d'],lerésultatsera'd'.

Renvoielalongueurdelavaleur.Celafonctionneaussibienpourdutextequedeslistes.

{{value|length}}Sivaluevaut['a','b','c','d']ou"abcd",lerésultatsera4.

Lefiltrerenvoie0pourunevariablenondéfinie.

RenvoieTruesilalongueurdelavaleurcorrespondauparamètre,sinonFalse.

{{value|length_is:"4"}}Sivaluecontient['a','b','c','d']ou"abcd",lerésultatseraTrue.

RemplacelessautsdelignedansdutextebrutparlecodeHTMLapproprié;unsautdelignesimpledevientunsautdeligneHTML(
)etunsautdelignesuivid’unelignevidedevientunsautdeparagraphe(

).

{{value|linebreaks}}Sivaluecontient"Jol\nestunelimace",lerésultatsera

Jol
estunelimace

.

Convertittouslessautsdeligned’uncontenudetextebrutensautsdeligneHTML(
).

{{value|linebreaksbr}}Sivaluecontient"Jol\nestunelimace",lerésultatseraJol
estunelimace.

Afficheuntexteennumérotantseslignes.

{{value|linenumbers}}Sivaluecontient:

onetwothreelerésultatsera:

Paramètre:tailledechamp

Convertitunechanetoutenminuscules.

{{value|lower}}SivaluecontientJ'aimeFOLLEMENTcetalbum!,lerésultatseraj'aimefollementcetalbum!.

Renvoielavaleurtransforméeenliste.Pourunechane,ceseraunelistedecaractères.Pourunnombreentier,leparamètreestd’abordforcéenchaneavantd’enfaireuneliste.

{{value|make_list}}Sivaluecontientlachane"Jol",lerésultatseralaliste['J','o','','l'].Sivaluecontient123,lerésultatseralaliste['1','2','3'].

Convertitunnumérodetéléphone(pouvantcontenirdeslettres)ensonéquivalentnumérique.

Lavaleurdedépartnedoitpasforcémentêtreunnumérodetéléphonevalable.Toutechanedecaractèresseratransforméesansrenacler.

{{value|phone2numeric}}Sivaluevaut800-COLLECT,lerésultatsera800-2655328.

Renvoieunsuffixedeplurielsilavaleurestdifférentede1,'1'oud’unobjetdelongueur1.Pardéfaut,lesuffixeest's'.

Youhave{{num_messages}}message{{num_messages|pluralize}}.Sinum_messagescontient1,lerésultatseraYouhave1message.Sinum_messagescontient2,lerésultatseraYouhave2messages.

Pourlesmotsexigeantunsuffixeautreque's',vouspouvezindiquerunsuffixealternatifenparamètredufiltre.

Youhave{{num_walruses}}walrus{{num_walruses|pluralize:"es"}}.Pourlesmotsdontleplurieln’estpasunsimplesuffixe,vouspouvezindiqueràlafoisunsuffixesingulieretunsuffixepluriel,séparésparunevirgule.

Youhave{{num_cherries}}cherr{{num_cherries|pluralize:"y,ies"}}.Note

Renvoieunélémentaléatoiredanslalisteindiquée.

{{value|random}}Sivaluecontientlaliste['a','b','c','d'],lerésultatpourraitêtre"b".

Aligneàdroitelavaleurdansunchampdelargeurdonnée.

Marqueunechanecommen’ayantplusbesoind’êtreéchappéeavantd’êtreaffichéedansducodeHTML.Lorsquel’échappementautomatiqueestdésactivé,cefiltren’aaucuneffet.

Sivousenchanezdesfiltres,unfiltreappliquéaprèssafepeutdenouveaurendrelecontenunonfiable.Parexemple,lecodesuivantaffichelavariabletellequelle,nonéchappée:

Renvoieunsegmentdelaliste.

{{some_list|slice:":2"}}Sisome_listcontient['a','b','c'],lerésultatsera['a','b'].

ConvertitenASCII.Convertitlesespacesentirets.Enlèvelescaractèresquinesontnialphanumériques,nisoulignements,nitirets.Convertitenminuscules.Lesespacesendébutetfindechanesontaussienlevés.

{{value|slugify}}Sivaluecontient"Jolestunelimace",lerésultatserajoel-est-une-limace.

{{value|stringformat:"E"}}SIvaluecontient10,lerésultatsera1.000000E+01.

Faittoutsonpossiblepoursupprimertouteslesbalises[X]HTML.

{{value|striptags}}Sivaluecontient"Jolunelimace",lerésultatsera"Jolestunelimace".

Aucunegarantiedesécurité

Metenformeuneheureselonleformatindiqué.

{{value|time:"H:i"}}Sivalueestéquivalentàdatetime.datetime.now(),lerésultatsera"01:23".

Unautreexemple:

{{value|time:"TIME_FORMAT"}}lerésultatsera"01:23"(lespécificateurdeformat"TIME_FORMAT"delalocaledefournieparDjangocontient"H:i").

Lorsqu’aucunechanedeformatn’estindiquée,c’estleformatTIME_FORMATquiestutilisé:

{{value|time}}estidentiqueà:

Accepteunparamètrefacultatifsousformedevariablecontenantladateàutilisercommepointdecomparaison(sansparamètre,lepointdecomparaisonestmaintenant).Parexemple,siblog_dateestuneinstancededatereprésentantminuitle1juin2006etquecomment_dateestuneinstancededatereprésentantle1juin2006à08:00,lecodesuivantrenverra8heures:

{{blog_date|timesince:comment_date}}Lacomparaisonentredesdates/heuresnavesetconscientes(enrapportaufuseauhoraire)renvoieunechanevide.

Lesminutessontlapluspetiteunitéutilisée,et0minuteestrenvoyépourtoutedatedanslefuturenfonctiondupointdecomparaison.

Semblableàtimesince,saufqu’ilmesureletempsdepuismaintenantjusqu’àladateoudate/heureindiquée.Parexemple,sinoussommesle1erjuin2006etqueconference_dateestuneinstancededatecontenantle29juin2006,{{conference_date|timeuntil}}renverra4semaines.

Accepteunparamètrefacultatifsousformedevariablecontenantladateàutilisercommepointdecomparaison(aulieudemaintenant).Sifrom_datecontientle22juin2006,lecodesuivantrenverra1semaine:

{{conference_date|timeuntil:from_date}}Lacomparaisonentredesdates/heuresnavesetconscientes(enrapportaufuseauhoraire)renvoieunechanevide.

Lesminutessontlapluspetiteunitéutilisée,et0minuteestrenvoyépourtoutedatedanslepasséenfonctiondupointdecomparaison.

Convertitunechaneencassedetitredetypeanglophoneenmettantenmajusculelapremièrelettredechaquemotetenminusculeslesautreslettres.Cettebalisenefaitaucuneffortpourconserverenminusculeslesmotsutilitaires.

{{value|title}}Sivaluecontient"monPREMIERarticle",lerésultatsera"MonPremierArticle".

Tronqueunechanesielleestpluslonguequelenombredecaractèresindiqué.Leschanestronquéesseterminentparuncaractèrepointsdesuspension(…).

Paramètre:lenombremaximumdecaractèresdurésultat

{{value|truncatechars:7}}Sivaluecontient"Jolestunelimace",lerésultatsera"Jole…".

{{value|truncatechars_html:7}}Sivaluecontient"

Jolestunelimace

",lerésultatsera"

Jole…

".

LessautsdelignedanslecontenuHTMLsontpréservés.

Tronqueunechaneaprèsuncertainnombredemots.

Paramètre:lenombremaximumdemotsdurésultat

{{value|truncatewords:2}}Sivaluecontient"Jolestunelimace",lerésultatsera"Jolest…".

Lessautsdeligneàl’intérieurdelavaleurserontenlevés.

{{value|truncatewords_html:2}}Sivaluecontient"

Jolestunelimace

",lerésultatsera"

Jolest…

".

AcceptedeslistesimbriquéesetlestraiterécursivementpourobtenirunelisteHTMLnonordonnée,sanslesbalises

    ouvrantesetfermantes.

    Ilestnécessairequelalistesoitdanslebonformat.Parexemple,sivarcontient['States',['Kansas',['Lawrence','Topeka'],'Illinois']],lerésultatde{{var|unordered_list}}sera:

    {{value|upper}}Sivaluevaut"Jolestunelimace",lerésultatsera"JOLESTUNELIMACE".

    échappeunevaleurpourêtreinclusedansuneURL.

    Ilestpossibledefournirunparamètrefacultatifcontenantlescaractèresquinedoiventpasêtreéchappés.

    Sansceparamètre,lecaractère/estconsidérécommesr.Ilestpossibledefournirunechanevidepourindiquerquetouslescaractèresdoiventêtreéchappés.Parexemple:

    ConvertitlesURLetlesadressesélectroniquesdansletexteenhyperliens.

    Ilconvertitégalementlesliensnomsdedomaines’ilsseterminentparl’undesdomainesdepremierniveaudebase(.com,.edu,.gov,.int,.mil,.netet.org).Parexemple,djangoproject.comseraconverti.

    Leslienspeuventseterminerpardelaponctuation(points,virgules,parenthèsefermante)etpeuventcommencerpardelaponctuation(parenthèseouvrante);urlizen’enserapasperturbépourautant.

    Lesliensgénérésparurlizereoiventl’attributrel="nofollow".

    SiurlizeestappliquéàdutextequicontientdéjàdesbalisesHTMLouàdesadressesélectroniquescontenantdesguillemetssimples('),leschosesnesepasserontpascommeprévu.N’appliquezcefiltrequ’àdutextepur.

    Paramètre:lenombremaximumdecaractèresqueletexteduliencontiendraaprèsavoirététronquésinécessaire,ycomprisl’ellipseajoutéeparlatroncature,lecaséchéant.

    Renvoielenombredemots.

    {{value|wordcount}}Sivaluevaut"Jolestunelimace",lerésultatsera4.

    Ajoutedessautsdeligned’aprèsunelongueurdelignemaximale.

    Paramètre:lenombredecaractèresaprèslequelunsautdeligneestrajoutédansletexte.

    {{value|wordwrap:5}}SivaluevautJoelisaslug,lerésultatsera:

    {%loadstatic%}Elleestaussicapabled’exploiterdesvariablesdecontextestandards;parexempleensupposantqu’unevariableuser_stylesheetesttransmiseaugabarit:

    {%loadstatic%}{%static"images/hi.jpg"asmyphoto%}UtilisationdegabaritsJinja2

    {%loadstatic%}Ilexisteaussiunesecondeformeutilisablepourempêcherdutraitementinutilesivousavezbesoindelamêmevaleurplusieursfois:

    {%loadstatic%}Enstockantlavaleurdansunattributdedonnées,nousnousassuronsqu’ellesoitproprementéchappéesinoussouhaitonsl’utiliserdansuncontexteJavaScript.

THE END
1.保险百科:全保汽车保险提供全面保障六条建议助你顺利应对医疗保险开放报名季 Molly Maid 市场放缓,房源量回升,买家话语权增强 Molly Maid 交了这么多税,有没有一些项目可以抵税呢?(二) Molly Maid 美国地产资讯 - 疫情让美国“独立空间”供不应求,从而可能刺激消费增加,为经济提供新的复苏动力。 Molly Maid ...https://www.jiazhumeiguo.com/blog/mgfd8e3b97870/video/2297
2.亚马逊保险购买操作,购买流程与注意事项亚马逊的保险政策从去年的9月1号开始生效,有很多商家买了,也有很多商家还没买。这个保险能帮助顾客和卖家有效的应对缺陷商品问题。那亚马逊保险怎么买? 一、亚马逊保险怎么买? 第一步,SellerCenter-新闻-更多 第二步,找到2021年08月10日的扩展亚马逊商城交易保障以保护买家和卖家(美国)的新闻后点开链接 ...https://www.hupun.com/articles/7WCFbTqY.html
3.人保i无忧2.0保障怎么样?预定利率下调会影响保费吗?三、总结 总的来说,i无忧2.0重疾险整体保障比较全面,大保险公司出品,最重要的是健康告知相当宽松,是是一款适合非标体人群购买的重疾险。还是那句话,买保险要趁早,尤其是预定利率下调后,重疾险更贵了,身体有异常的朋友买保险可能更难了。https://www.kaixinbao.com/zixun/354457.shtml
4.I\\u0027mstgifDoctorgif动图动态图表情包下载SOOGIF为您提供I\\u0027mgif动态图片,stgifDoctor动图表情包下载,还有更多关于I\\u0027m,st,gif,Doctor的动图内容,尽在SOOGIF。https://www.soogif.com/materialPage/Ehk1GESXLrU
5.SchneiderElectric施耐德电气工业维修零部件产品免责声明...03-81581-02 I/O BOARD 03-81987-02 I/O BOARD 03065-04 3000 CONTROLLER 04-02880 5000 SAMPLER BD 04-02880-09 5000 SAMPLER BD 04-03458 PCB 04-03458-03 PCB 04-03809-00 POWER BOARD 04-03809-01 POWER BOARD 889621 POWER BOARD FLT NH3 MODULE G/M-JR2 PCB UTF-2102A U/S FLOW XMTR UTL...http://fanpaijidian.com/?p=4179
6.职业院校技能大赛高职组(嵌入式系统应用开发赛项)备赛试题库(含...()A、以上都是B、分区C、引导系统答案:A29.m是指A、ObjectiveC源程序B、经过预处理的c程序C、头...A、终端服务子程序B、自动配置和初始化子程序C、服务于I/O接口的子程序答案:A33.嵌入式的硬件也...{\u0027a\u0027,\u0027b\u0027,\u0027c\u0027}C、hars[5]={""}D、chars[5]={"abcdef"...https://www.renrendoc.com/paper/346888273.html
7.微高电子IC交易网×3 3 — I 2 C×1 6 16NSOP 20SSOP HT66FM5240 20MHz 4.5V~ 5.5V 32kHz~ 20MHz 4K×16...HT45F0027 2.2V~ 5.5V 1/2/4/8MHz or 32kHz 2K×16 256×8 32×8 9 2 —√ 12-bit×...HT-ICE(S) CICE46L000007A OTP Type-0A ICP-1A HT46RU67 OTP Type-0D HT46R0662, HT46R067...http://www.rf-china.com/n43/cpu.asp
1.保险公司推出的保险产品概览,保险公司保险产品概览介绍随着社会的不断发展和人们生活水平的提高,风险管理已成为人们日常生活中不可或缺的一部分,保险作为一种有效的风险管理工具,已经越来越受到人们的关注和认可,作为专业的保险公司,我们为客户提供一系列全面、创新的保险产品,以满足不同客户的需求,本文将详细介绍保险公司在售的保险产品,以帮助客户更好地了解并选择适合自...http://kmzmjm.cn/post/57453.html
2.www.zboht.com/yyys/2024/1021/910068.html天美麻豆联合-TM0027 66.46MB 900好评 久久动漫视频豆丁网 女神被拖到公厕里灌满jing液 igao...13.56MB 787好评 蜜桃麻豆www久久已更新 西西4444 免费一级做a爰片性色毛片69 77.30MB 100好评...在线丨暗呦交小u女精品视频 成人视频在线观看 女人高潮娇喘抽搐喷水视频95 97.38MB 54%好评143人...https://www.zboht.com/yyys/2024/1021/910068.html
3.c#初级之字符的Unicode值的作用,使用@不识别转义字符,return,foreach上面的 ’ 号可以用字符的Unicode值u0027代替,输出效果相同 字符的Unicode值在实际中比较少用得到,在这里只是提一下 使用@不识别转义字符 如果我们不想去识别字符串中的转义字符,可以在字符串前面加一个@符号 举例: Console.WriteLine("I'm a good man. \n You are bad girl!"); Console.WriteLine(@"I'm...https://blog.csdn.net/weixin_42291538/article/details/87522262
4.设矩阵A是一个对称矩阵,为了节收间,将其下三角矩阵按行存储存放...B. char s[5]={\u0027a\u0027, \u0027b\u0027,\u0027c\u0027} C. char s[5]={""} D. char s[5]={"abcdef"} 查看完整题目与答案 【简答题】设A为n阶方阵,且令B=A+AT,C=A-AT。证明B为对称矩阵,C为反对称矩阵; 查看完整题目与答案 【单选题】下在是对一维数组s...https://www.shuashuati.com/ti/5daa42e48cc44fc0bdf4b45222158bdf.html?fm=bdbds91f03b2adf8e376d1df6424680a1f357
5.www.gxminyu.com/apf25999843M男专门美脚の诱脚舐め脚责 三级极品在线舔 大肉棒抽插小穴视频免费 54.13MB 672好评 我要看毛片中国少妇 亚洲黄色视频三级片 女保险公司推销员...03.87MB 0027好评 快乐男风gv巨大粗爽GV 漂亮女孩脱光用萝卜插 天堂一区二区三区视频 319.00MB 29好评 色太太AV 欧美性爱第三穴 干屌视频 ...http://www.gxminyu.com/apf25999843
6.sinotianze.com/xxxr81617113.html随着2024年半年报披露,公司也推出中期分红计划,积极回报投资者。已有20家公司披露权益分派预案,拟分红金额3.26亿元。开市以来,91家公司发布112份股份回购方案,回购金额上限合计23.8亿元,超50家公司披露董监高增持公告,坚定看好企业发展,大幅提振市场信心。 今年以来,北交所公司累计新增股份回购计划20份,回购金额上限合计5.42...http://sinotianze.com/xxxr81617113.html
7.268.mis999.com/newxr60695390.htm和其他车型相比,Z10 STARBUFF在AMD车规级系统芯片V2000A的基础上,加配了AMD RX6600M独立显卡,能够运行3A大型游戏,同时搭载了17英寸OLED后排屏幕、1TB固态硬盘、5G网络、电竞座椅以及放置键鼠的小桌板,电竞氛围拉满。但“把电竞房装进汽车”,车企要做的不仅仅是把零部件一股脑塞进座舱,而是软件层面的适配。 http://268.mis999.com/newxr60695390.htm
8.www.juntengtech.cn/newxr37982145/45973674.htm地下偶像 俄罗斯呦交小U女 爱情岛路线一路线二路线三淘宝 沉溺父女小说全文免费阅读无防盗 我把她...日本美女少妇 SSNI-012 葫芦里不买药千万影片你需要 拔萝卜打扑克全程不盖被子下载 反差婊吃瓜爆料...少妇人妻偷人精品视频免费 78m成人视、频 2021锕锕锕锕锕锕好痛f2d 秀人梦心玥AV在线 自慰丝袜喷水...http://www.juntengtech.cn/newxr37982145/45973674.htm
9.KOBOLD流量开关SMW14300/IR08「其他传感器」I24-S5R-E25<br>PHOENIX QUINT-PS/1AC/24DC/5<br>ENTRELEC 开关保险丝夹头 NR115138-15开关保险...14U/D08LA4-TF-D-FV-K<br>ZIEHL-ABEGG FH40M-4DK-4C-1R<br>LOVATO 蜂鸣器 8 LM2T B102 E10https://m.makepolo.com/product/100864556578.html
10.Java程序设计(Java9版):第2章数据类型与运算符(Datatypesand...Java继承了C语言中的字符常量的三种表示:一般式,直接通过字符来表示,比如’a’;第二种是转义字符,如表2.2所示,Java中转义字符的语义与C语言中的转义字符相同;第三种,使用数值来表示,Java使用Unicode编码,所以Unicode值来表示字符,格式是\uXXXX,其中XXXX代表一个十六进制的整数,比如前256个字符(’\u0000’ ~ ‘...https://cloud.tencent.com/developer/article/1010965
11.LINOSLiquiFilter各种GHIJKL报价LISTMAGNETIKMETO-FER-0012ST-02G-3A-U5X LBF钢铁制风管112V MTS传感器GHM3000M-RB1-2R0 ...PHOENIX 保险端子 ST 4-FSI/C 3036372 SAWAMURASS40E60-TO-L250 RHM1650MD601C101311 ...VOITH安全油Safeset oil 624 500ml bottle307.90002710Oel Safeset oil 624 500mlNo.2: 9-0027 ...http://www.afzhan.com/chanpin/7430076.html
12.CodeReviewMicrosoftLearnfindstr /S /M /I /d:c:\projects\yourweb "password" *.* Findstr uses the following command-line parameters:/S— include subdirectories. /M—...' (single quotes) &#39 ' ' \u0027 & (ampersand) & &#x26 & \u0026 < (lesser than) &#60 < < \u00...https://msdn.microsoft.com/en-us/library/aa302437.aspx
13.Lowmolecularweightsilkfibroinincreasesalkaline...Low molecular weight silk fibroin increases alkaline phosphatase and type I collagen expression in MG63 cells Download PDF ? PreviousNext ? Abstract Keywords References Cited byhttp://dx.doi.org/10.5483/BMBRep.2010.43.1.052
14."DSEG":7segmentand14U+0022"N/A" U+0024$N/A$ U+0025%N/A% U+0026&N/A& U+0027'N/A' U+0028(N/A( U+0029)N/A) U+002A*N/A* ...U+0043CCC U+0044DDD U+0045EEE U+0046FFF U+0047GGG U+0048HHH U+0049III U+004AJJJ U+004BKKK U+004CLLL U+004DMMM ...https://www.keshikan.net/fonts-e.html
15.THEPALOMARDISTANTCLUSTERSURVEY:I.THECLUSTERCATALOG(m m ) P is t(hr=ercd)i is the projected radial pro erential cluster luminosity le of ...Cluster 013 Cluster 011: GHO cluster 0027+0535 (also known as 00 ). Cluster 012: GHO https://arxiv.org/pdf/astro-ph/9511011
16.Anunexpectederroroccurred:''F'isaninvalidstartofa...Describe the bug I'm trying first time to usedsctool to connect to cluster, but it doesn't work, despite me having cluster admin privileges ? dsc connect --service data-center-api --local-port 3001 --namespace compliance-staging https://github.com/Azure/Bridge-To-Kubernetes/issues/246
17.VISHAYNOBELTYPE:KIMD0835及欧美千家品牌报价HIMMEL-0023 S01-M1B2 0.25KW I=8.75 HERZOG-2552 636069 HONEYWELL-0745 PN:060-5513-02 IMS-2386...KONCAR-0001 GN20 S13-U KUEBLER-0753 8.5834SIL.A426.1024 MONTWILL-0004 GmbH DV3.001.776C 48X...GLUAL-0021 KI-25/12X250-S303-1-AD-A-M-30 FUCHS-0026 16140-W1 FUCHS-0027 16140 FUCHS-0028...https://www.chem17.com/st285067/product_17200322.html
18.IoT工业物联平台(IIoT)24.3.0安全管理(for华为云Stack8.3.1...IoT 工业物联平台(IIoT) 24.3.0 安全管理 文档版本 01 发布日期 2024-04-30 华为云计算技术有限公司 版权所有 ? 华为云计算技术有限公司 2024。 保留一切权利。 非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传 ...https://support.huawei.com/enterprise/zh/doc/EDOC1100372627
19.BINDER备件8661114H07仪器仪表B+R 模块 3DI477.6 MTS 传感器 RHM0200MP051S1G6100 DELTA 热金属检测器 Z3.JC.S N`85581 220V...DEUBLIN 旋转接头 1890-063 403400/U0027 HYDAC 气囊 SB330-50A1/112A9-330A BR 备件 8BVI0055HWDhttps://www.gkzhan.com/st152292/product_6853566.html