diff --git a/sapl/base/migrations/0039_auto_20190910_1109.py b/sapl/base/migrations/0039_auto_20190910_1109.py
deleted file mode 100644
index 62f56f741..000000000
--- a/sapl/base/migrations/0039_auto_20190910_1109.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.20 on 2019-09-10 14:09
-from __future__ import unicode_literals
-
-from django.conf import settings
-from django.db import migrations, models
-import django.db.models.deletion
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- migrations.swappable_dependency(settings.AUTH_USER_MODEL),
- ('base', '0038_auto_20190604_1109'),
- ]
-
- operations = [
- migrations.CreateModel(
- name='AutorUser',
- fields=[
- ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
- ('autor', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='base.Autor', verbose_name='Autor')),
- ('user', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL, verbose_name='Usuário')),
- ],
- options={
- 'verbose_name': 'Autor - Usuário',
- 'verbose_name_plural': 'Autores - Usuários',
- 'ordering': ('autor__nome',),
- },
- ),
- migrations.AlterUniqueTogether(
- name='autoruser',
- unique_together=set([('autor', 'user')]),
- ),
- ]
diff --git a/sapl/base/migrations/0039_auto_20190913_1228.py b/sapl/base/migrations/0039_auto_20190913_1228.py
new file mode 100644
index 000000000..221e661d4
--- /dev/null
+++ b/sapl/base/migrations/0039_auto_20190913_1228.py
@@ -0,0 +1,56 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.20 on 2019-09-13 15:28
+from __future__ import unicode_literals
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+def migra_autores_usuarios(apps, schema_editor):
+ Autor = apps.get_model('base', 'Autor')
+ AutorUser = apps.get_model('base', 'AutorUser')
+
+ for a in Autor.objects.filter(user__isnull=False):
+ AutorUser.objects.create(autor=a, user=a.user)
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+ ('base', '0038_auto_20190604_1109'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='AutorUser',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ],
+ options={
+ 'verbose_name': 'Autor - Usuário',
+ 'verbose_name_plural': 'Autores - Usuários',
+ 'ordering': ('autor__nome',),
+ },
+ ),
+ migrations.AlterField(
+ model_name='autor',
+ name='cargo',
+ field=models.CharField(blank=True, max_length=50, verbose_name='Cargo'),
+ ),
+ migrations.AddField(
+ model_name='autoruser',
+ name='autor',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='base.Autor', verbose_name='Autor'),
+ ),
+ migrations.AddField(
+ model_name='autoruser',
+ name='user',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL, unique=True, verbose_name='Usuário'),
+ ),
+ migrations.RunPython(migra_autores_usuarios),
+ migrations.RemoveField(
+ model_name='autor',
+ name='user',
+ )
+ ]
diff --git a/sapl/base/migrations/0040_auto_20190910_1113.py b/sapl/base/migrations/0040_auto_20190910_1113.py
deleted file mode 100644
index 0041e4722..000000000
--- a/sapl/base/migrations/0040_auto_20190910_1113.py
+++ /dev/null
@@ -1,24 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.20 on 2019-09-10 14:13
-from __future__ import unicode_literals
-
-from django.db import migrations
-from sapl.utils import get_settings_auth_user_model
-
-def migra_autores_usuarios(apps, schema_editor):
- Autor = apps.get_model('base', 'Autor')
- AutorUser = apps.get_model('base', 'AutorUser')
-
- for a in Autor.objects.filter(user__isnull=False):
- AutorUser.objects.create(autor=a, user=a.user)
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('base', '0039_auto_20190910_1109'),
- ]
-
- operations = [
- migrations.RunPython(migra_autores_usuarios)
- ]
diff --git a/sapl/base/migrations/0041_auto_20190911_1541.py b/sapl/base/migrations/0041_auto_20190911_1541.py
deleted file mode 100644
index 74f24f611..000000000
--- a/sapl/base/migrations/0041_auto_20190911_1541.py
+++ /dev/null
@@ -1,20 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.20 on 2019-09-11 18:41
-from __future__ import unicode_literals
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('base', '0040_auto_20190910_1113'),
- ]
-
- operations = [
- migrations.AlterField(
- model_name='autor',
- name='cargo',
- field=models.CharField(blank=True, max_length=50, verbose_name='Cargo'),
- ),
- ]
diff --git a/sapl/base/migrations/0042_remove_autor_user.py b/sapl/base/migrations/0042_remove_autor_user.py
deleted file mode 100644
index 990c0313f..000000000
--- a/sapl/base/migrations/0042_remove_autor_user.py
+++ /dev/null
@@ -1,19 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.20 on 2019-09-11 20:01
-from __future__ import unicode_literals
-
-from django.db import migrations
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('base', '0041_auto_20190911_1541'),
- ]
-
- operations = [
- migrations.RemoveField(
- model_name='autor',
- name='user',
- ),
- ]
diff --git a/sapl/base/models.py b/sapl/base/models.py
index 999215440..d995c5529 100644
--- a/sapl/base/models.py
+++ b/sapl/base/models.py
@@ -252,16 +252,16 @@ class AutorUser(models.Model):
verbose_name=_('Autor'),
on_delete=models.PROTECT
)
- user = models.ForeignKey(
+ user = models.OneToOneField(
get_settings_auth_user_model(),
verbose_name=_('Usuário'),
- on_delete=models.PROTECT
+ on_delete=models.PROTECT,
+ unique=True
)
class Meta:
verbose_name = _('Autor - Usuário')
verbose_name_plural = _('Autores - Usuários')
- unique_together = (('autor', 'user'), )
ordering = ('autor__nome',)
def __str__(self):
diff --git a/sapl/templates/base.html b/sapl/templates/base.html
index 3c937d3ed..b86509679 100644
--- a/sapl/templates/base.html
+++ b/sapl/templates/base.html
@@ -63,7 +63,7 @@