Ich verwende den sehr coolen django-Filter (via: http://github.com/alex/django-filter ) und komme entweder mit den Unterlagen nicht zurecht oder brauche einfach eine kleine Unterstützung brauchen.
Wenn ich das Filterformular auf einer Objektlistenseite einblende, erhalte ich für ein FK-Feld die Dropdown-Liste, die ein "-----" enthält, was zu einem Filter vom Typ "beliebig" ergibt. Aber ich habe einige Auswahlmöglichkeiten für ein Feld in diesem Modell festgelegt, und ich möchte die gleiche Option vom Typ "any" erhalten. Hier ist ein relevanter Beispielabschnitt aus models.py:
TICKET_STATUS_CHOICES = (
('new', 'New'),
('accepted', 'Accepted'),
('assigned', 'Assigned'),
('reopened', 'Reopened'),
('closed', 'Closed'),
)
class Ticket(models.Model):
assigned_to = models.ForeignKey(User, null=True, blank=True)
status = models.CharField(max_length=20,
choices=TICKET_STATUS_CHOICES, default='new')
import django_filters
class TicketFilter(django_filters.FilterSet):
class Meta:
model = Ticket
fields = ['assigned_to', 'status']
Wenn ich das Filterformular anzeige, wird ' assigned_to'
erhält eine 'any'-Option, da sowie eine Auflistung der verfügbaren Benutzer. Die 'status'
Feld ist jedoch auf die im Feld "_CHOICES" aufgeführten Optionen beschränkt.
Wie füge ich den Feldern, die auf _CHOICES basieren, eine Option "any" hinzu?