Browse Source

Теперь когда при создании устройство уже есть в базе, то показывается кнопка, ведущая н это существующее устройство

devel
Dmitry Novikov 9 years ago
parent
commit
bdefe33175
  1. 12
      devapp/templates/devapp/add_dev.html
  2. 12
      devapp/views.py

12
devapp/templates/devapp/add_dev.html

@ -37,7 +37,15 @@
<div class="input-group{% if form.mac_addr.errors %} has-error{% endif %}">
<span class="input-group-addon"><span class="glyphicon glyphicon-globe"></span></span>
{{ form.mac_addr }}{{ form.mac_addr.errors }}
{{ form.mac_addr }}
{% if already_dev %}
<span class="input-group-btn">
<a class="btn btn-danger" href="{% url 'devapp:view' group.pk already_dev.pk %}" title="{% trans 'View the device' %}" data-toggle="tooltip">
{% for err in form.mac_addr.errors %}{{ err }}{% endfor %}
{{ already_dev.comment }}
</a>
</span>
{% endif %}
</div>
</div>
@ -99,4 +107,4 @@
</div>
</div>
{% endblock %}
{% endblock %}

12
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', {

Loading…
Cancel
Save