Files
mayan-edms/mayan/apps/user_management/migrations/0001_initial.py
Roberto Rosario 255b1c75ea Style: Prepend "operation_" to data migrations
Prepend "operation_" to the data migration functions
for clear purpose. Add keyword arguments to the RunPython
migration opration.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
2018-12-07 17:28:22 -04:00

60 lines
2.0 KiB
Python

# -*- coding: utf-8 -*-
# Generated by Django 1.11.11 on 2018-08-26 10:01
from __future__ import unicode_literals
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
def operation_add_user_options_to_existing_users(apps, schema_editor):
User = apps.get_model(settings.AUTH_USER_MODEL)
UserOptions = apps.get_model(
app_label='user_management', model_name='UserOptions'
)
for user in User.objects.using(schema_editor.connection.alias).all():
UserOptions.objects.using(
schema_editor.connection.alias
).create(user=user)
def operation_remove_user_options_from_existing_users(apps, schema_editor):
User = apps.get_model(settings.AUTH_USER_MODEL)
UserOptions = apps.get_model(
app_label='user_management', model_name='UserOptions'
)
for user in User.objects.using(schema_editor.connection.alias).all():
UserOptions.objects.using(
schema_editor.connection.alias
).filter(user=user).delete()
class Migration(migrations.Migration):
initial = True
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.CreateModel(
name='UserOptions',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('block_password_change', models.BooleanField(default=False, verbose_name='Forbid this user from changing their password.')),
('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='user_options', to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
options={
'verbose_name': 'User settings',
'verbose_name_plural': 'Users settings',
},
),
migrations.RunPython(
code=operation_add_user_options_to_existing_users,
reverse_code=operation_remove_user_options_from_existing_users
),
]