Comment puis-je passer kwargs dans l'URL dans django
Dans le django doc de la fonction url, c'est comme cela
url(regex, view, kwargs=None, name=None, prefix='')
J'ai cette
url(r'^download/template/(?P<object_id>\d+)/$', views.myview().myfunction,model=models.userModel, name="sample")
C'est mon point de vue
class myview(TemplateView):
def myfunction(self,request, object_id, **kwargs):
model = kwargs['model']
J'obtiens cette erreur
url() got an unexpected keyword argument 'model'
source d'informationauteur user825904
Vous devez vous connecter pour publier un commentaire.
Vous essayez de passer à un
model
argument mot-clé à laurl()
fonction, vous devez passer dans unkwargs
argument à la place (il faut un dictionnaire):Ce:
Devrait être:
Voir docs
Votre implémentation actuelle n'est pas thread-safe. Par exemple:
Vous attendez-vous à imprimer 'Foo Aucun' ? Ainsi être prudent cause l'instance est partagé entre les demandes:
Donc, quand il n'est pas thread-safe, vous ne pouvez pas supposer qu'il va être dans un état de propreté lors de la demande commence - à la différence lors de l'utilisation de as_view().
Je crois que vous avez la même fonctionnalité (et éviter les problèmes de threading) si vous l'avez fait dans votre
views.py