J'aimerais ajouter des paramètres de requête à une {% url %}
balise, comme ?office=foobar
.
Est-ce possible? Je ne trouve rien dessus.
django
django-templates
Brian D
la source
la source
Réponses:
Non, car les paramètres GET ne font pas partie de l'URL.
Ajoutez-les simplement à la fin:
Pour Django 1.5+
la source
example.com/myview/?office=foobar
au lieu deexample.com/myview?office=foobar
?Une façon de mélanger les paramètres actuels avec de nouveaux:
Modifiez vos paramètres pour avoir une variable de requête:
la source
À utiliser
urlencode
si l'argument est une variableou bien des caractères spéciaux tels que des espaces peuvent casser votre URL.
Documentation: https://docs.djangoproject.com/en/3.0/ref/templates/builtins/#urlencode
la source
some_var
variable retourne vide dans le href mais est indiquée comme étant remplie si elle est utilisée ailleurs dans le modèle. v2.1Tout d'abord, une réponse idiote:
Une réponse sérieuse: non, vous ne pouvez pas. Le résolveur d'URL de Django correspond uniquement à la partie chemin de l'URL, ainsi la
{% url %}
balise ne peut inverser que cette partie de l'URL.la source
Essaye ça:
Cela a fonctionné pour moi. Il fait essentiellement un retour sur ce lien et applique les arguments donnés.
la source