Hallo,
Ich habe einen Fehler, den ich nicht verstehe, warum er passiert.
Ich erhalte diesen Fehler den folgenden Fehler, während ich das Django-Rest-Framework in einem Aufruf an ein Modell mit einem ForeignKey verwende.
Error:
Meta.fields contains a field that isn't defined on this FilterSet
From:
django_filters/filterset.py
Django version 1.8.5
django-filter version 0.11.0
Mein Modell ist folgendes:
class Contract(models.Model):
idContract = models.AutoField(db_column='idContract',primary_key=True)
idClient = models.ForeignKey(Client, db_column='idClient',related_name='+')
contractmode = models.ForeignKey('Ccontractmode', db_column='ContractMode',related_name='+')
applicationdate = models.DateTimeField(db_column='applicationDate',null=True)
deliverydate = models.DateTimeField(db_column='deliveryDate', blank=True, null=True)
expirationdate = models.DateTimeField(db_column='expirationDate',null=True)
mode = models.CharField(max_length=16)
class Meta:
managed = False
db_table = 'Contract'
default_permissions = ('add', 'change', 'delete', 'view')
Ich würde mich sehr freuen, wenn Sie mir sagen könnten, ob dies ein Fehler ist oder ich etwas falsch habe.
Danke vielmals.
Adam
Ok, tut mir leid, ich habe das Problem gerade erst gefunden.
class ContractViewSet(viewsets.ModelViewSet):
permission_classes = (DjangoModelPermissions2,
DjangoObjectPermissions2,)
queryset = Contract.objects.all()
serializer_class = ContractSerializer
filter_backends = (filters.DjangoFilterBackend,)
filter_fields = ('applicationdate',)
in filter_fields habe ich das Komma nicht gesetzt, um es zu einem Tupel zu machen.
Hilfreichster Kommentar
Ok, tut mir leid, ich habe das Problem gerade erst gefunden.
in filter_fields habe ich das Komma nicht gesetzt, um es zu einem Tupel zu machen.