Browse Source

Gère l'enregistrement origin A sur une zone

test_david
chirac 9 years ago
parent
commit
145c64691c
  1. 2
      machines/admin.py
  2. 5
      machines/forms.py
  3. 25
      machines/migrations/0032_auto_20161119_1850.py
  4. 3
      machines/models.py
  5. 6
      machines/templates/machines/aff_extension.html

2
machines/admin.py

@ -14,7 +14,7 @@ class MachineTypeAdmin(VersionAdmin):
class ExtensionAdmin(VersionAdmin):
list_display = ('name',)
list_display = ('name','origin')
class MxAdmin(VersionAdmin):
list_display = ('zone', 'priority', 'name')

5
machines/forms.py

@ -112,17 +112,18 @@ class DelIpTypeForm(ModelForm):
class ExtensionForm(ModelForm):
class Meta:
model = Extension
fields = ['name']
fields = ['name', 'origin']
def __init__(self, *args, **kwargs):
super(ExtensionForm, self).__init__(*args, **kwargs)
self.fields['name'].label = 'Extension à ajouter'
self.fields['origin'].label = 'Enregistrement A origin'
class DelExtensionForm(ModelForm):
extensions = forms.ModelMultipleChoiceField(queryset=Extension.objects.all(), label="Extensions actuelles", widget=forms.CheckboxSelectMultiple)
class Meta:
exclude = ['name']
exclude = ['name', 'origin']
model = Extension
class MxForm(ModelForm):

25
machines/migrations/0032_auto_20161119_1850.py

@ -0,0 +1,25 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('machines', '0031_auto_20161119_1709'),
]
operations = [
migrations.AddField(
model_name='extension',
name='origin',
field=models.OneToOneField(null=True, to='machines.IpList', blank=True, on_delete=django.db.models.deletion.PROTECT),
),
migrations.AlterField(
model_name='extension',
name='name',
field=models.CharField(max_length=255, unique=True),
),
]

3
machines/models.py

@ -43,7 +43,8 @@ class IpType(models.Model):
class Extension(models.Model):
PRETTY_NAME = "Extensions dns"
name = models.CharField(max_length=255)
name = models.CharField(max_length=255, unique=True)
origin = models.OneToOneField('IpList', on_delete=models.PROTECT, blank=True, null=True)
def __str__(self):
return self.name

6
machines/templates/machines/aff_extension.html

@ -2,13 +2,15 @@
<thead>
<tr>
<th>Extension</th>
<th></th>
<th>Enregistrement A origin</th>
<th></th>
</tr>
</thead>
{% for extension in extension_list %}
<tr>
<td>{{ extension.name }}</td>
<td class="text-right">
<td>{{ extension.origin }}</td>
<td class="text-right">
{% if is_infra %}
{% include 'buttons/edit.html' with href='machines:edit-extension' id=extension.id %}
{% endif %}

Loading…
Cancel
Save