From 7ce5d0dbbfde440e89a214bd2d3b2e05d24cdf13 Mon Sep 17 00:00:00 2001 From: brett Date: Wed, 25 Oct 2017 20:19:30 +0100 Subject: [PATCH] Added rfid card listing and removed user drop down from rfid create form --- mhackspace/templates/users/rfid_form.html | 25 ++++++++++++++++++++++- mhackspace/users/urls.py | 7 ++++++- mhackspace/users/views.py | 16 ++++++++++++--- 3 files changed, 43 insertions(+), 5 deletions(-) diff --git a/mhackspace/templates/users/rfid_form.html b/mhackspace/templates/users/rfid_form.html index 4e1762d..56eb2ad 100644 --- a/mhackspace/templates/users/rfid_form.html +++ b/mhackspace/templates/users/rfid_form.html @@ -4,8 +4,9 @@ {% block title %}{{ user.username }}{% endblock %} {% block content %} + {% if form %}

{{ user.username }}

-
+ {% csrf_token %} {{ form|crispy }} {{ form_blurb|crispy }} @@ -15,4 +16,26 @@
+ {% else %} + + + + + + + + + {% for rfid in rfids %} + + + + + + {% endfor %} +
#CodeShort Description
{{ forloop.counter }} + {{ rfid.code}} + + {{ rfid.description}} +
+ {% endif %} {% endblock %} diff --git a/mhackspace/users/urls.py b/mhackspace/users/urls.py index 530b556..ffe8293 100644 --- a/mhackspace/users/urls.py +++ b/mhackspace/users/urls.py @@ -28,7 +28,12 @@ urlpatterns = [ ), url( regex=r'^-access-cards$', - view=views.RfidCardsUpdateView.as_view(), + view=views.RfidCardsListView.as_view(), name='access_cards' ), + url( + regex=r'^-access-card-create$', + view=views.RfidCardsUpdateView.as_view(), + name='access_card_create' + ), ] diff --git a/mhackspace/users/views.py b/mhackspace/users/views.py index 43f5b2f..d5d4512 100644 --- a/mhackspace/users/views.py +++ b/mhackspace/users/views.py @@ -67,17 +67,27 @@ class UserUpdateView(LoginRequiredMixin, UpdateView): return super(UserUpdateView, self).form_valid(form) -class RfidCardsUpdateView(LoginRequiredMixin, CreateView): - fields = ['user', 'code', 'description', ] +class RfidCardsListView(LoginRequiredMixin, ListView): + template_name = 'users/rfid_form.html' + context_object_name = 'rfids' + paginate_by = 50 model = Rfid + def get_queryset(self): + return Rfid.objects.filter(user=self.request.user) + + +class RfidCardsUpdateView(LoginRequiredMixin, CreateView): + fields = ['code', 'description', ] + model = Rfid + success_url = '/users/-access-cards' + def form_valid(self, form): user = self.request.user form.instance.user = user return super(RfidCardsUpdateView, self).form_valid(form) - class UserListView(LoginRequiredMixin, ListView): model = User # These next two lines tell the view to index lookups by username