| a | b | |
|---|
| 0 | + | On models.py |
|---|
| 0 | + | ============ |
|---|
| 0 | + | |
|---|
| 0 | + | |
|---|
| 0 | + | class Transfer(models.Model): |
|---|
| 0 | + | """ |
|---|
| 0 | + | """ |
|---|
| 0 | + | amount = models.DecimalField( |
|---|
| 0 | + | max_digits=11, |
|---|
| 0 | + | decimal_places=2, |
|---|
| 0 | + | ) |
|---|
| 0 | + | |
|---|
| 0 | + | source_account = models.ForeignKey( |
|---|
| 0 | + | 'account.Account', |
|---|
| 0 | + | related_name='source_account', |
|---|
| 0 | + | ) |
|---|
| 0 | + | destination_account = models.ForeignKey( |
|---|
| 0 | + | 'account.Account', |
|---|
| 0 | + | related_name='destination_account', |
|---|
| 0 | + | ) |
|---|
| 0 | + | |
|---|
| 0 | + | created_at = models.DateTimeField( |
|---|
| 0 | + | auto_now_add=True, |
|---|
| 0 | + | ) |
|---|
| 0 | + | |
|---|
| 0 | + | class Meta: |
|---|
| 0 | + | ordering = ['created_at'] |
|---|
| 0 | + | |
|---|
| 0 | + | |
|---|
| 0 | + | On filters.py |
|---|
| 0 | + | ============= |
|---|
| 0 | + | |
|---|
| 0 | + | from django_filters import FilterSet |
|---|
| 0 | + | from django_filters import CharFilter |
|---|
| 0 | + | |
|---|
| 0 | + | from accounts.models import Transfer |
|---|
| 0 | + | |
|---|
| 0 | + | |
|---|
| 0 | + | class TransferFilterSet(FilterSet): |
|---|
| 0 | + | """ |
|---|
| 0 | + | """ |
|---|
| 0 | + | |
|---|
| 0 | + | class Meta: |
|---|
| 0 | + | model = Transfer |
|---|
| 0 | + | fields = [ |
|---|
| 0 | + | 'source_account', |
|---|
| 0 | + | 'destination_account', |
|---|
| 0 | + | ] |
|---|
| 0 | + | |
|---|
| 0 | + | On views.py |
|---|
| 0 | + | |
|---|
| 0 | + | |
|---|
| 0 | + | from accounts.models import Transfer |
|---|
| 0 | + | |
|---|
| 0 | + | from account.filters import TransferFilterSet |
|---|
| 0 | + | |
|---|
| 0 | + | |
|---|
| 0 | + | def transfer_list(request): |
|---|
| 0 | + | """ |
|---|
| 0 | + | """ |
|---|
| 0 | + | filterset = TransfetFilterSet( |
|---|
| 0 | + | request.GET or None, |
|---|
| 0 | + | queryset=Transfer.objects.all(), |
|---|
| 0 | + | ) |
|---|
| 0 | + | |
|---|
| 0 | + | return render_to_response("template.html", { |
|---|
| 0 | + | "filter": filterset, |
|---|
| 0 | + | }, context_instance=RequestContext(request)) |
|---|
| ... | |
|---|