Je souhaite créer un sérialiseur qui utilise les variables de mon modèle et qui comptabilise également le nombre de données du même identifiant dans la table.Comment utiliser les variables personnalisées dans les sérialiseurs?
J'ai créé cela, mais il ne fonctionne pas:
class WebsiteSerializer(serializers.Serializer):
item_nr = serializers.IntegerField()
class Meta:
model = URL
fields = (
"id",
"item",
"status",
"item_nr "
)
def get_item_nr (self, obj):
obj.item_nr = Items.objects.filter(item_id=self.context.get(id)).count()
return obj.item_nr
C'est l'erreur que je reçois:
Got AttributeError lors d'une tentative d'obtenir une valeur pour le champ
item_nr
sur sérialiseurWebsiteSerializer
. Le champ du sérialiseur peut être incorrectement nommé et ne correspondre à aucun attribut ou clé sur l'instanceURL
. Le texte d'exception original était: L'objet 'URL' n'a pas d'attribut 'item_nr'.
Quelle est l'erreur que vous obtenez? –
Veuillez fournir la définition des modèles pour plus de contexte. Merci. – mariodev
Il y a un espace dans "item_nr". –