0004_alter_userprofile_user_historicalusergameprogress.py 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. # Generated by Django 4.1 on 2022-09-07 13:38
  2. from django.conf import settings
  3. import django.core.validators
  4. from django.db import migrations, models
  5. import django.db.models.deletion
  6. import django.utils.timezone
  7. import django_extensions.db.fields
  8. import simple_history.models
  9. class Migration(migrations.Migration):
  10. dependencies = [
  11. migrations.swappable_dependency(settings.AUTH_USER_MODEL),
  12. (
  13. 'games',
  14. '0020_developer_uuid_game_uuid_gamecollection_uuid_and_more',
  15. ),
  16. ('profiles', '0003_alter_usergameprogress_user'),
  17. ]
  18. operations = [
  19. migrations.AlterField(
  20. model_name='userprofile',
  21. name='user',
  22. field=models.OneToOneField(
  23. on_delete=django.db.models.deletion.CASCADE,
  24. related_name='profile',
  25. to=settings.AUTH_USER_MODEL,
  26. ),
  27. ),
  28. migrations.CreateModel(
  29. name='HistoricalUserGameProgress',
  30. fields=[
  31. (
  32. 'id',
  33. models.BigIntegerField(
  34. auto_created=True,
  35. blank=True,
  36. db_index=True,
  37. verbose_name='ID',
  38. ),
  39. ),
  40. (
  41. 'created',
  42. django_extensions.db.fields.CreationDateTimeField(
  43. auto_now_add=True, verbose_name='created'
  44. ),
  45. ),
  46. (
  47. 'modified',
  48. django_extensions.db.fields.ModificationDateTimeField(
  49. auto_now=True, verbose_name='modified'
  50. ),
  51. ),
  52. (
  53. 'started_ts',
  54. models.DateTimeField(
  55. blank=True, default=django.utils.timezone.now
  56. ),
  57. ),
  58. ('finished_ts', models.DateTimeField(blank=True, null=True)),
  59. (
  60. 'percent',
  61. models.IntegerField(
  62. default=0,
  63. help_text='Keeps track of how far through the game you are',
  64. validators=[
  65. django.core.validators.MaxValueValidator(100),
  66. django.core.validators.MinValueValidator(0),
  67. ],
  68. ),
  69. ),
  70. (
  71. 'history_id',
  72. models.AutoField(primary_key=True, serialize=False),
  73. ),
  74. ('history_date', models.DateTimeField(db_index=True)),
  75. (
  76. 'history_change_reason',
  77. models.CharField(max_length=100, null=True),
  78. ),
  79. (
  80. 'history_type',
  81. models.CharField(
  82. choices=[
  83. ('+', 'Created'),
  84. ('~', 'Changed'),
  85. ('-', 'Deleted'),
  86. ],
  87. max_length=1,
  88. ),
  89. ),
  90. (
  91. 'game',
  92. models.ForeignKey(
  93. blank=True,
  94. db_constraint=False,
  95. null=True,
  96. on_delete=django.db.models.deletion.DO_NOTHING,
  97. related_name='+',
  98. to='games.game',
  99. ),
  100. ),
  101. (
  102. 'history_user',
  103. models.ForeignKey(
  104. null=True,
  105. on_delete=django.db.models.deletion.SET_NULL,
  106. related_name='+',
  107. to=settings.AUTH_USER_MODEL,
  108. ),
  109. ),
  110. (
  111. 'user',
  112. models.ForeignKey(
  113. blank=True,
  114. db_constraint=False,
  115. null=True,
  116. on_delete=django.db.models.deletion.DO_NOTHING,
  117. related_name='+',
  118. to=settings.AUTH_USER_MODEL,
  119. ),
  120. ),
  121. ],
  122. options={
  123. 'verbose_name': 'historical user game progress',
  124. 'verbose_name_plural': 'historical user game progresss',
  125. 'ordering': ('-history_date', '-history_id'),
  126. 'get_latest_by': ('history_date', 'history_id'),
  127. },
  128. bases=(simple_history.models.HistoricalChanges, models.Model),
  129. ),
  130. ]