C'est probablement très basique, mais je commence à apprendre le framework Django REST. Jusqu'à présent, j'ai réussi avec des opérations en lecture seule. Et maintenant je me suis coincé sur ce problème.Attacher l'auteur à la requête POST pour créer un objet
J'ai un modèle:
class PersonComment(AbstractComment):
person = models.ForeignKey(Person, on_delete=models.PROTECT)
author = models.ForeignKey('auth.User')
body = models.TextField(default='', blank=False)
(Ici, l'auteur est l'auteur du commentaire et personne est une personne ce commentaire concerne, c'est un site généalogique.) Et un sérialiseur connexe:
class PersonCommentSerialiser(serializers.HyperlinkedModelSerializer):
class Meta:
model = PersonComment
fields = ('url', 'body', 'person', 'author')
Dans ma page HTML, je m'attends à ce qu'un utilisateur soumette un commentaire en fournissant "body", le reste devrait être automatiquement rempli. Quelle est la meilleure pratique pour remplir "l'auteur"? Dans mes exercices pré-DRF Django, je faisais quelque chose comme ça dans la vue:
comment = PersonComment.objects.create(
author=request.user,
body=new_comment_body,
person=person
)
Mais si je comprends tout ce que je l'ai lu jusqu'à présent, ce n'est pas la façon DRF. Toute aide est très appréciée.