0001_squashed_0011.py 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. from django.conf import settings
  2. import django.contrib.auth.models
  3. import django.contrib.postgres.fields
  4. import django.core.validators
  5. from django.db import migrations, models
  6. import django.db.models.deletion
  7. import users.models
  8. class Migration(migrations.Migration):
  9. initial = True
  10. dependencies = [
  11. migrations.swappable_dependency(settings.AUTH_USER_MODEL),
  12. ('contenttypes', '0002_remove_content_type_name'),
  13. ('auth', '0012_alter_user_first_name_max_length'),
  14. ]
  15. replaces = [
  16. ('users', '0001_api_tokens'),
  17. ('users', '0002_unicode_literals'),
  18. ('users', '0003_token_permissions'),
  19. ('users', '0004_standardize_description'),
  20. ('users', '0005_userconfig'),
  21. ('users', '0006_create_userconfigs'),
  22. ('users', '0007_proxy_group_user'),
  23. ('users', '0008_objectpermission'),
  24. ('users', '0009_replicate_permissions'),
  25. ('users', '0010_update_jsonfield'),
  26. ('users', '0011_standardize_models'),
  27. ]
  28. operations = [
  29. migrations.CreateModel(
  30. name='User',
  31. fields=[
  32. ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False)),
  33. ('password', models.CharField(max_length=128)),
  34. ('last_login', models.DateTimeField(blank=True, null=True)),
  35. ('is_superuser', models.BooleanField(default=False)),
  36. (
  37. 'username',
  38. models.CharField(
  39. error_messages={'unique': 'A user with that username already exists.'},
  40. max_length=150,
  41. unique=True,
  42. validators=[django.contrib.auth.validators.UnicodeUsernameValidator()],
  43. ),
  44. ),
  45. ('first_name', models.CharField(blank=True, max_length=150)),
  46. ('last_name', models.CharField(blank=True, max_length=150)),
  47. ('email', models.EmailField(blank=True, max_length=254)),
  48. ('is_staff', models.BooleanField(default=False)),
  49. ('is_active', models.BooleanField(default=True)),
  50. ('date_joined', models.DateTimeField(default=django.utils.timezone.now)),
  51. (
  52. 'groups',
  53. models.ManyToManyField(
  54. blank=True, related_name='user_set', related_query_name='user', to='auth.group'
  55. ),
  56. ),
  57. (
  58. 'user_permissions',
  59. models.ManyToManyField(
  60. blank=True, related_name='user_set', related_query_name='user', to='auth.permission'
  61. ),
  62. ),
  63. ],
  64. options={
  65. 'verbose_name': 'user',
  66. 'verbose_name_plural': 'users',
  67. 'db_table': 'auth_user',
  68. 'ordering': ('username',),
  69. },
  70. managers=[
  71. ('objects', users.models.UserManager()),
  72. ],
  73. ),
  74. migrations.CreateModel(
  75. name='UserConfig',
  76. fields=[
  77. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False)),
  78. ('data', models.JSONField(default=dict)),
  79. (
  80. 'user',
  81. models.OneToOneField(
  82. on_delete=django.db.models.deletion.CASCADE, related_name='config', to=settings.AUTH_USER_MODEL
  83. ),
  84. ),
  85. ],
  86. options={
  87. 'verbose_name': 'User Preferences',
  88. 'verbose_name_plural': 'User Preferences',
  89. 'ordering': ['user'],
  90. },
  91. ),
  92. migrations.CreateModel(
  93. name='Token',
  94. fields=[
  95. ('id', models.BigAutoField(primary_key=True, serialize=False)),
  96. ('created', models.DateTimeField(auto_now_add=True)),
  97. ('expires', models.DateTimeField(blank=True, null=True)),
  98. (
  99. 'key',
  100. models.CharField(
  101. max_length=40, unique=True, validators=[django.core.validators.MinLengthValidator(40)]
  102. ),
  103. ),
  104. ('write_enabled', models.BooleanField(default=True)),
  105. ('description', models.CharField(blank=True, max_length=200)),
  106. (
  107. 'user',
  108. models.ForeignKey(
  109. on_delete=django.db.models.deletion.CASCADE, related_name='tokens', to=settings.AUTH_USER_MODEL
  110. ),
  111. ),
  112. ],
  113. ),
  114. migrations.CreateModel(
  115. name='ObjectPermission',
  116. fields=[
  117. ('id', models.BigAutoField(primary_key=True, serialize=False)),
  118. ('name', models.CharField(max_length=100)),
  119. ('description', models.CharField(blank=True, max_length=200)),
  120. ('enabled', models.BooleanField(default=True)),
  121. (
  122. 'actions',
  123. django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), size=None),
  124. ),
  125. ('constraints', models.JSONField(blank=True, null=True)),
  126. ('groups', models.ManyToManyField(blank=True, related_name='object_permissions', to='auth.Group')),
  127. (
  128. 'object_types',
  129. models.ManyToManyField(
  130. related_name='object_permissions',
  131. to='contenttypes.ContentType',
  132. ),
  133. ),
  134. (
  135. 'users',
  136. models.ManyToManyField(blank=True, related_name='object_permissions', to=settings.AUTH_USER_MODEL),
  137. ),
  138. ],
  139. options={
  140. 'verbose_name': 'permission',
  141. 'ordering': ['name'],
  142. },
  143. ),
  144. ]