non dynamic search for button

This commit is contained in:
Pierre-antoine Comby 2020-03-23 20:21:25 +01:00
parent 1ce7dc0118
commit 7cd8a37aec
4 changed files with 38 additions and 5 deletions

View File

@ -89,9 +89,9 @@ class TransactionTemplateViewSet(ReadProtectedModelViewSet):
""" """
queryset = TransactionTemplate.objects.all() queryset = TransactionTemplate.objects.all()
serializer_class = TransactionTemplateSerializer serializer_class = TransactionTemplateSerializer
filter_backends = [DjangoFilterBackend] filter_backends = [SearchFilter, DjangoFilterBackend]
filterset_fields = ['name', 'amount', 'display', 'category', ] filterset_fields = ['name', 'amount', 'display', 'category', ]
search_fields = ['$name', ]
class TransactionViewSet(ReadProtectedModelViewSet): class TransactionViewSet(ReadProtectedModelViewSet):
""" """

View File

@ -82,6 +82,11 @@ class ButtonTable(tables.Table):
'class': 'class':
'table table condensed table-striped table-hover' 'table table condensed table-striped table-hover'
} }
row_attrs = {
'class': 'table-row',
'data-href': lambda record: record.pk
}
model = TransactionTemplate model = TransactionTemplate
def render_amount(self, value): def render_amount(self, value):

View File

@ -8,6 +8,7 @@ from django.db.models import Q
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
from django.views.generic import CreateView, ListView, UpdateView from django.views.generic import CreateView, ListView, UpdateView
from django_tables2 import SingleTableView from django_tables2 import SingleTableView
from django.urls import reverse_lazy
from permission.backends import PermissionBackend from permission.backends import PermissionBackend
from .forms import TransactionTemplateForm from .forms import TransactionTemplateForm
@ -108,7 +109,7 @@ class TransactionTemplateCreateView(LoginRequiredMixin, CreateView):
""" """
model = TransactionTemplate model = TransactionTemplate
form_class = TransactionTemplateForm form_class = TransactionTemplateForm
success_url = reverse_lazy('template_list')
class TransactionTemplateListView(LoginRequiredMixin, SingleTableView): class TransactionTemplateListView(LoginRequiredMixin, SingleTableView):
""" """
@ -117,6 +118,14 @@ class TransactionTemplateListView(LoginRequiredMixin, SingleTableView):
model = TransactionTemplate model = TransactionTemplate
table_class = ButtonTable table_class = ButtonTable
def get_queryset(self):
name = self.request.GET.get('name','')
if (name != ''):
object_list = self.model.objects.filter(name__icontains = name)
else:
object_list = self.model.objects.all()
return object_list
class TransactionTemplateUpdateView(LoginRequiredMixin, UpdateView): class TransactionTemplateUpdateView(LoginRequiredMixin, UpdateView):
""" """

View File

@ -1,7 +1,26 @@
{% extends "base.html" %} {% extends "base.html" %}
{% load pretty_money %} {% load pretty_money %}
{% load i18n %}
{% load render_table from django_tables2 %} {% load render_table from django_tables2 %}
{% block content %} {% block content %}
<a class="btn btn-primary text-center" href="{% url 'note:template_create' %}">Créer un bouton</a> <div class="row justify-content-center mb-4">
{% render_table table %} <div class="col-md-10 text-center">
<h4>
{% trans "search button" %}
</h4>
<form action="" method="GET">
{% csrf_token %}
<input class="form-control mx-auto w-25" type="text" id="name" name="name" value='{{ request.GET.name }}'/>
</form>
<ul class="list-group list-group-flush" id="alias_matched">
</ul>
<hr>
<a class="btn btn-primary text-center my-4" href="{% url 'note:template_create' %}">Créer un bouton</a>
</div>
</div>
<div class="row justify-content-center">
<div class="col-md-10">
{% render_table table %}
</div>
</div>
{% endblock %} {% endblock %}