Ho provato ad accedere alla variabile del template django nella pagina html inline javascript, funziona bene. Ma se includo js usando <script src="..>
allora non funziona. Questa limitazione o sto facendo qualcosa di sbagliato? Apprezzo molto il tuo aiuto.Accesso al template Django {{Variable}} da JavaScript
risposta
Il Javascript incluso non viene elaborato dal processore di template Django sul server, quindi non funzionerà. Se è necessario passare le informazioni tramite il modello ai file JavaScript inclusi, fare in modo che il modello crei un piccolo blocco <script>
in cui viene dichiarata una variabile globale contenente tali variabili del modello. Quindi, il tuo file Javascript puro può ottenere i valori cercando l'oggetto globale creato da tale <script>
dal modello.
La risposta di Pointy è corretta. Spesso trovo questo filtro utile per questa situazione:
@register.filter(name='json')
def _json(obj):
#remember to make sure the contents are actually safe before you use this filter!
return safestring.mark_safe(json.dumps(obj))
poi in un tag <script>
posso solo fare qualcosa di simile:
window.g_details = {{ details|json }};
Lo userò una volta che implementerò JSON nel mio codice js. Grazie – Cool
@JasonPrado: perché si dovrebbe fare questo? – Medorator
Questa risposta ha 4 anni quindi scommetto che django ha una soluzione migliore ormai. Ma la mia idea qui è che è bello essere in grado di convertire un dizionario Python in un dizionario JSON in modo facile e sicuro. –
- 1. Accesso al microfono da un browser - Javascript
- 2. migliori prassi, compreso javascript nel template Django
- 3. Problema con Javascript Variable Scope
- 4. Javascript: TypeError variable is undefined
- 5. Accesso a una dict per variabile nei template di Django?
- 6. Django manytomany in template template
- 7. Attributi del campo modulo di accesso in template Django
- 8. Accesso al devserver di Django da un'altra macchina stessa
- 9. django include template da un'altra app
- 10. Short if-else template django
- 11. Accesso al progetto django nei sistemi LAN
- 12. Django Class Based Views URL Variable Passing
- 13. accesso al modello dal middleware - django
- 14. Email template in Django
- 15. Come controllare Sass Variable con javascript
- 16. Accesso al parametro URL denominato in Template o Middleware
- 17. Come gestire i moduli Javascript nei template di Django?
- 18. passando stringhe unicode da django a javascript
- 19. accesso Javascript TR da TD
- 20. Django template engine rientro
- 21. IsInstance in template Django?
- 22. Django template escape
- 23. Django Template Test Coverage
- 24. Oggetto JavaScript letterale. object [i] .variable
- 25. HTML JavaScript Include File Variable Scope
- 26. Passare urlname variabile al tag url nel template django
- 27. django template if or statement
- 28. Django Template Slice - Inversione Order
- 29. Django: oggetto di richiesta di accesso da form.clean di admin()
- 30. Accesso alle variabili del template di ramoscello da php
questo ha funzionato gr8 ... grazie! – Cool