From bdefe33175b9545e17e5c683e9a6dd6f5443a055 Mon Sep 17 00:00:00 2001 From: Dmitry Novikov Date: Mon, 31 Jul 2017 11:46:17 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A2=D0=B5=D0=BF=D0=B5=D1=80=D1=8C=20=D0=BA?= =?UTF-8?q?=D0=BE=D0=B3=D0=B4=D0=B0=20=D0=BF=D1=80=D0=B8=20=D1=81=D0=BE?= =?UTF-8?q?=D0=B7=D0=B4=D0=B0=D0=BD=D0=B8=D0=B8=20=D1=83=D1=81=D1=82=D1=80?= =?UTF-8?q?=D0=BE=D0=B9=D1=81=D1=82=D0=B2=D0=BE=20=D1=83=D0=B6=D0=B5=20?= =?UTF-8?q?=D0=B5=D1=81=D1=82=D1=8C=20=D0=B2=20=D0=B1=D0=B0=D0=B7=D0=B5,?= =?UTF-8?q?=20=D1=82=D0=BE=20=D0=BF=D0=BE=D0=BA=D0=B0=D0=B7=D1=8B=D0=B2?= =?UTF-8?q?=D0=B0=D0=B5=D1=82=D1=81=D1=8F=20=D0=BA=D0=BD=D0=BE=D0=BF=D0=BA?= =?UTF-8?q?=D0=B0,=20=D0=B2=D0=B5=D0=B4=D1=83=D1=89=D0=B0=D1=8F=20=D0=BD?= =?UTF-8?q?=20=D1=8D=D1=82=D0=BE=20=D1=81=D1=83=D1=89=D0=B5=D1=81=D1=82?= =?UTF-8?q?=D0=B2=D1=83=D1=8E=D1=89=D0=B5=D0=B5=20=D1=83=D1=81=D1=82=D1=80?= =?UTF-8?q?=D0=BE=D0=B9=D1=81=D1=82=D0=B2=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- devapp/templates/devapp/add_dev.html | 12 ++++++++++-- devapp/views.py | 12 +++++++++--- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/devapp/templates/devapp/add_dev.html b/devapp/templates/devapp/add_dev.html index 5cd2f4e..4838e99 100644 --- a/devapp/templates/devapp/add_dev.html +++ b/devapp/templates/devapp/add_dev.html @@ -37,7 +37,15 @@
- {{ form.mac_addr }}{{ form.mac_addr.errors }} + {{ form.mac_addr }} + {% if already_dev %} + + + {% for err in form.mac_addr.errors %}{{ err }}{% endfor %} + {{ already_dev.comment }} + + + {% endif %}
@@ -99,4 +107,4 @@ -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/devapp/views.py b/devapp/views.py index d3b124a..f8faf8b 100644 --- a/devapp/views.py +++ b/devapp/views.py @@ -75,6 +75,7 @@ def devdel(request, did): def dev(request, grp, devid=0): devinst = get_object_or_404(Device, id=devid) if devid != 0 else None user_group = get_object_or_404(AbonGroup, pk=grp) + already_dev = None if request.method == 'POST': if devid == 0: @@ -85,10 +86,14 @@ def dev(request, grp, devid=0): raise PermissionDenied frm = DeviceForm(request.POST, instance=devinst) if frm.is_valid(): - frm.save() + ndev = frm.save() messages.success(request, _('Device info has been saved')) - return redirect('devapp:devs', grp) + return redirect('devapp:edit', grp, ndev.pk) else: + try: + already_dev = Device.objects.get(mac_addr=request.POST.get('mac_addr')) + except Device.DoesNotExist: + pass messages.error(request, _('Form is invalid, check fields and try again')) else: if devinst is None: @@ -106,7 +111,8 @@ def dev(request, grp, devid=0): if devinst is None: return render(request, 'devapp/add_dev.html', { 'form': frm, - 'group': user_group + 'group': user_group, + 'already_dev': already_dev }) else: return render(request, 'devapp/dev.html', {