J'essaie de remplacer la méthode get () à mon avis comme: dans mon modèle est une méthode de remplacement comme: p> Deux questions ->
Où est-ce que je me trompe avec le remplacement?
Comment accéder à l'argument "Demande" est-il passé? p> p>
3 Réponses :
La façon dont vous avez défini la signature de la méthode, la demande est disponible en tant que obtenez code> n'est pas une méthode sur le modèle - vous y accédez via
Objets CODE>, c'est donc une méthode sur le gestionnaire. Voir le Documentation officielle du gestionnaire . P>
args [0] code>. p>
Alors, comment puis-je remplacer la méthode du gestionnaire?
En définissant une sous-classe Custom Manager avec une méthode Obtention de remplacement, comme indiqué dans cette documentation ...
Malheureusement, la documentation que vous vous référez à ne pas avoir d'exemple explicite d'un code> de méthode code>.
Compte tenu de l'exemple de l'application de sondage dans le tutoriel de Django. Vous pouvez effectuer une opération obtenir code> pour obtenir un sondage
Questions de la base de données.
In : Question.objects.get(pk=1)
hello world
Out: <Question: Question object>
Notez que les versions Django plus modernes (depuis 1.7), offrent un moyen plus facile de le faire. Découvrez la méthode HTTPS: //docs.djangoproject.com/fr/2.2/topics/db/Managers/#Creatting-a-manager-with-queryset-methods P> as_manager () code> requête. P>