Coverage for src / mesh / migrations / 0002_comment_discussion_alter_submissionauthor_options_and_more.py: 100%
6 statements
« prev ^ index » next coverage.py v7.13.1, created at 2026-10-22 07:20 +0000
« prev ^ index » next coverage.py v7.13.1, created at 2026-10-22 07:20 +0000
1# Generated by Django 4.2.26 on 2026-08-17 08:42
3import django.db.models.deletion
4from django.conf import settings
5from django.db import migrations, models
8class Migration(migrations.Migration):
9 dependencies = [
10 ("mesh", "0001_initial"),
11 ]
13 operations = [
14 migrations.CreateModel(
15 name="Comment",
16 fields=[
17 (
18 "id",
19 models.BigAutoField(
20 auto_created=True,
21 primary_key=True,
22 serialize=False,
23 verbose_name="ID",
24 ),
25 ),
26 ("date_submitted", models.DateTimeField(auto_now_add=True)),
27 ("date_last_modified", models.DateTimeField(auto_now=True)),
28 ("is_deleted", models.BooleanField(default=False)),
29 ("raw_html", models.TextField()),
30 ("sanitized_html", models.TextField()),
31 (
32 "author",
33 models.ForeignKey(
34 null=True,
35 on_delete=django.db.models.deletion.SET_NULL,
36 related_name="comments",
37 to=settings.AUTH_USER_MODEL,
38 ),
39 ),
40 ],
41 options={
42 "ordering": ["date_submitted"],
43 },
44 ),
45 migrations.CreateModel(
46 name="Discussion",
47 fields=[
48 (
49 "id",
50 models.BigAutoField(
51 auto_created=True,
52 primary_key=True,
53 serialize=False,
54 verbose_name="ID",
55 ),
56 ),
57 (
58 "type",
59 models.CharField(
60 choices=[
61 ("editor_author", "Éditeurs / Auteurs"),
62 ("editor_reviewer", "Éditeurs / Relecteurs"),
63 ("editor_only", "Éditeurs"),
64 ],
65 max_length=32,
66 ),
67 ),
68 ("icon", models.CharField(blank=True, max_length=64)),
69 ("title", models.CharField(blank=True, max_length=255)),
70 ("created_at", models.DateTimeField(auto_now_add=True)),
71 (
72 "members",
73 models.ManyToManyField(
74 blank=True,
75 related_name="discussions",
76 to=settings.AUTH_USER_MODEL,
77 ),
78 ),
79 (
80 "submission",
81 models.ForeignKey(
82 on_delete=django.db.models.deletion.CASCADE,
83 related_name="discussions",
84 to="mesh.submission",
85 ),
86 ),
87 ],
88 options={
89 "ordering": ["created_at"],
90 },
91 ),
92 migrations.AlterModelOptions(
93 name="submissionauthor",
94 options={"ordering": ["last_name"]},
95 ),
96 migrations.AlterModelOptions(
97 name="submissionlog",
98 options={"ordering": ["-date_created"]},
99 ),
100 migrations.AlterModelOptions(
101 name="submissionversion",
102 options={"ordering": ["-number"]},
103 ),
104 migrations.CreateModel(
105 name="Inbox",
106 fields=[
107 (
108 "id",
109 models.BigAutoField(
110 auto_created=True,
111 primary_key=True,
112 serialize=False,
113 verbose_name="ID",
114 ),
115 ),
116 ("comments", models.ManyToManyField(blank=True, to="mesh.comment")),
117 (
118 "user",
119 models.ForeignKey(
120 on_delete=django.db.models.deletion.CASCADE,
121 to=settings.AUTH_USER_MODEL,
122 ),
123 ),
124 ],
125 ),
126 migrations.AddField(
127 model_name="comment",
128 name="discussion",
129 field=models.ForeignKey(
130 on_delete=django.db.models.deletion.CASCADE,
131 related_name="comments",
132 to="mesh.discussion",
133 ),
134 ),
135 migrations.AddField(
136 model_name="comment",
137 name="parent",
138 field=models.ForeignKey(
139 blank=True,
140 null=True,
141 on_delete=django.db.models.deletion.CASCADE,
142 related_name="replies",
143 to="mesh.comment",
144 ),
145 ),
146 migrations.CreateModel(
147 name="DiscussionRead",
148 fields=[
149 (
150 "id",
151 models.BigAutoField(
152 auto_created=True,
153 primary_key=True,
154 serialize=False,
155 verbose_name="ID",
156 ),
157 ),
158 (
159 "date_last_seen",
160 models.DateTimeField(blank=True, default=None, null=True),
161 ),
162 (
163 "discussion",
164 models.ForeignKey(
165 on_delete=django.db.models.deletion.CASCADE,
166 to="mesh.discussion",
167 ),
168 ),
169 (
170 "user",
171 models.ForeignKey(
172 on_delete=django.db.models.deletion.CASCADE,
173 to=settings.AUTH_USER_MODEL,
174 ),
175 ),
176 ],
177 options={
178 "unique_together": {("discussion", "user")},
179 },
180 ),
181 ]