0001_initial.py 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. # Generated by Django 5.0 on 2023-12-26 03:32
  2. import django.contrib.auth.models
  3. import django.contrib.auth.validators
  4. import django.db.models.deletion
  5. import django.utils.timezone
  6. from django.db import migrations, models
  7. class Migration(migrations.Migration):
  8. initial = True
  9. dependencies = [
  10. ("auth", "0012_alter_user_first_name_max_length"),
  11. ]
  12. operations = [
  13. migrations.CreateModel(
  14. name="Manufacturer",
  15. fields=[
  16. (
  17. "id",
  18. models.BigAutoField(
  19. auto_created=True,
  20. primary_key=True,
  21. serialize=False,
  22. verbose_name="ID",
  23. ),
  24. ),
  25. ("name", models.CharField(max_length=100)),
  26. ],
  27. ),
  28. migrations.CreateModel(
  29. name="User",
  30. fields=[
  31. (
  32. "id",
  33. models.BigAutoField(
  34. auto_created=True,
  35. primary_key=True,
  36. serialize=False,
  37. verbose_name="ID",
  38. ),
  39. ),
  40. (
  41. "last_login",
  42. models.DateTimeField(
  43. blank=True, null=True, verbose_name="last login"
  44. ),
  45. ),
  46. (
  47. "is_superuser",
  48. models.BooleanField(
  49. default=False,
  50. help_text="Designates that this user has all permissions without explicitly assigning them.",
  51. verbose_name="superuser status",
  52. ),
  53. ),
  54. (
  55. "username",
  56. models.CharField(
  57. error_messages={
  58. "unique": "A user with that username already exists."
  59. },
  60. help_text="Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.",
  61. max_length=150,
  62. unique=True,
  63. validators=[
  64. django.contrib.auth.validators.UnicodeUsernameValidator()
  65. ],
  66. verbose_name="username",
  67. ),
  68. ),
  69. (
  70. "is_staff",
  71. models.BooleanField(
  72. default=False,
  73. help_text="Designates whether the user can log into this admin site.",
  74. verbose_name="staff status",
  75. ),
  76. ),
  77. (
  78. "is_active",
  79. models.BooleanField(
  80. default=True,
  81. help_text="Designates whether this user should be treated as active. Unselect this instead of deleting accounts.",
  82. verbose_name="active",
  83. ),
  84. ),
  85. (
  86. "date_joined",
  87. models.DateTimeField(
  88. default=django.utils.timezone.now, verbose_name="date joined"
  89. ),
  90. ),
  91. ("first_name", models.CharField(max_length=254, verbose_name="Имя")),
  92. ("last_name", models.CharField(max_length=254, verbose_name="Фамилия")),
  93. (
  94. "avatar",
  95. models.ImageField(
  96. upload_to="avatars", verbose_name="Загрузите аватарку"
  97. ),
  98. ),
  99. ("email", models.CharField(max_length=254, verbose_name="Пoчтa")),
  100. ("password", models.CharField(max_length=254, verbose_name="Пapoль")),
  101. (
  102. "role",
  103. models.CharField(
  104. choices=[("admin", "Администратор"), ("user", "Пoльзователь")],
  105. default="user",
  106. max_length=254,
  107. verbose_name="Poль",
  108. ),
  109. ),
  110. (
  111. "groups",
  112. models.ManyToManyField(
  113. blank=True,
  114. help_text="The groups this user belongs to. A user will get all permissions granted to each of their groups.",
  115. related_name="user_set",
  116. related_query_name="user",
  117. to="auth.group",
  118. verbose_name="groups",
  119. ),
  120. ),
  121. (
  122. "user_permissions",
  123. models.ManyToManyField(
  124. blank=True,
  125. help_text="Specific permissions for this user.",
  126. related_name="user_set",
  127. related_query_name="user",
  128. to="auth.permission",
  129. verbose_name="user permissions",
  130. ),
  131. ),
  132. ],
  133. options={
  134. "verbose_name": "user",
  135. "verbose_name_plural": "users",
  136. "abstract": False,
  137. },
  138. managers=[
  139. ("objects", django.contrib.auth.models.UserManager()),
  140. ],
  141. ),
  142. migrations.CreateModel(
  143. name="Product",
  144. fields=[
  145. (
  146. "id",
  147. models.BigAutoField(
  148. auto_created=True,
  149. primary_key=True,
  150. serialize=False,
  151. verbose_name="ID",
  152. ),
  153. ),
  154. ("title", models.CharField(max_length=200)),
  155. (
  156. "summary",
  157. models.TextField(
  158. help_text="Enter a brief description of the product",
  159. max_length=1000,
  160. ),
  161. ),
  162. (
  163. "img",
  164. models.ImageField(
  165. blank=True, default=None, null=True, upload_to="img"
  166. ),
  167. ),
  168. (
  169. "isbn",
  170. models.CharField(
  171. help_text='13 Character <a href="https://www.isbn-international.org/content/what-isbn">ISBN number</a>',
  172. max_length=13,
  173. verbose_name="ISBN",
  174. ),
  175. ),
  176. (
  177. "manufacturer",
  178. models.ForeignKey(
  179. null=True,
  180. on_delete=django.db.models.deletion.SET_NULL,
  181. to="catalog.manufacturer",
  182. ),
  183. ),
  184. ],
  185. ),
  186. ]