Skip to content
Snippets Groups Projects
Commit 1f417b46 authored by Valentin Rigal's avatar Valentin Rigal
Browse files

!1108 Add the migration with UUID PK

This will DROP the current Membership table !
parent 4a4e1af2
No related branches found
No related tags found
No related merge requests found
# Generated by Django 3.1.3 on 2020-11-24 13:30
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('users', '0007_user_display_name'),
]
operations = [
migrations.AlterField(
model_name='membership',
name='level',
field=models.PositiveIntegerField(help_text='User privilege level.'),
),
migrations.AlterUniqueTogether(
name='membership',
unique_together={('user', 'group')},
),
]
# Generated by Django 3.1.3 on 2020-11-24 13:30
import uuid
import django
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('users', '0007_user_display_name'),
]
operations = [
# Drop membership table and re-create it
migrations.DeleteModel(
name='Membership',
),
migrations.RemoveField(
model_name='group',
name='users',
),
migrations.CreateModel(
name='Membership',
fields=[
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
('level', models.PositiveIntegerField(help_text='User privilege level.', validators=[django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(100)])),
('group', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='memberships', to='users.group')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='memberships', to=settings.AUTH_USER_MODEL)),
],
options={
'unique_together': {('user', 'group')},
},
),
migrations.AddField(
model_name='group',
name='users',
field=models.ManyToManyField(related_name='groups', through='users.Membership', to=settings.AUTH_USER_MODEL),
),
]
import uuid
from django.contrib.auth.models import AbstractBaseUser
from django.core.validators import MaxValueValidator, MinValueValidator
from django.db import models
from django_rq.queues import get_queue
from django_rq.settings import QUEUES
......@@ -97,9 +98,16 @@ class Group(models.Model):
class Membership(models.Model):
id = models.UUIDField(default=uuid.uuid4, primary_key=True, editable=False)
user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='memberships')
group = models.ForeignKey(Group, on_delete=models.CASCADE, related_name='memberships')
level = models.PositiveIntegerField(help_text='User privilege level.')
level = models.PositiveIntegerField(
help_text='User privilege level.',
validators=[
MinValueValidator(1),
MaxValueValidator(100)
]
)
class Meta:
unique_together = (
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment