wip: reorder migration steps, add data migration placeholders
This commit is contained in:
parent
a00468f09f
commit
371a60e70f
1 changed files with 88 additions and 67 deletions
|
@ -6,85 +6,106 @@ import django.db.models.deletion
|
||||||
import django.utils.timezone
|
import django.utils.timezone
|
||||||
|
|
||||||
|
|
||||||
|
def forward_data_migration(apps, schema_editor):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
def backward_data_migration(apps, schema_editor):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
('todo', '0010_attachment'),
|
("todo", "0010_attachment"),
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
migrations.AlterModelOptions(
|
|
||||||
name='task',
|
|
||||||
options={},
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='assigned_to',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='completed',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='completed_date',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='created_by',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='created_date',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='due_date',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='id',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='note',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='priority',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='task_list',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='task',
|
|
||||||
name='title',
|
|
||||||
),
|
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='BaseTask',
|
name="BaseTask",
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
(
|
||||||
('title', models.CharField(max_length=140)),
|
"id",
|
||||||
('created_date', models.DateField(blank=True, default=django.utils.timezone.now, null=True)),
|
models.AutoField(
|
||||||
('due_date', models.DateField(blank=True, null=True)),
|
auto_created=True,
|
||||||
('completed', models.BooleanField(default=False)),
|
primary_key=True,
|
||||||
('completed_date', models.DateField(blank=True, null=True)),
|
serialize=False,
|
||||||
('note', models.TextField(blank=True, null=True)),
|
verbose_name="ID",
|
||||||
('priority', models.PositiveIntegerField(blank=True, null=True)),
|
|
||||||
('assigned_to', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='todo_assigned_to', to=settings.AUTH_USER_MODEL)),
|
|
||||||
('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='todo_created_by', to=settings.AUTH_USER_MODEL)),
|
|
||||||
('task_list', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='todo.TaskList')),
|
|
||||||
],
|
|
||||||
options={
|
|
||||||
'ordering': ['priority', 'created_date'],
|
|
||||||
},
|
|
||||||
),
|
),
|
||||||
|
),
|
||||||
|
("title", models.CharField(max_length=140)),
|
||||||
|
(
|
||||||
|
"created_date",
|
||||||
|
models.DateField(
|
||||||
|
blank=True,
|
||||||
|
default=django.utils.timezone.now,
|
||||||
|
null=True,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
("due_date", models.DateField(blank=True, null=True)),
|
||||||
|
("completed", models.BooleanField(default=False)),
|
||||||
|
("completed_date", models.DateField(blank=True, null=True)),
|
||||||
|
("note", models.TextField(blank=True, null=True)),
|
||||||
|
(
|
||||||
|
"priority",
|
||||||
|
models.PositiveIntegerField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"assigned_to",
|
||||||
|
models.ForeignKey(
|
||||||
|
blank=True,
|
||||||
|
null=True,
|
||||||
|
on_delete=django.db.models.deletion.CASCADE,
|
||||||
|
related_name="todo_assigned_to",
|
||||||
|
to=settings.AUTH_USER_MODEL,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"created_by",
|
||||||
|
models.ForeignKey(
|
||||||
|
null=True,
|
||||||
|
on_delete=django.db.models.deletion.CASCADE,
|
||||||
|
related_name="todo_created_by",
|
||||||
|
to=settings.AUTH_USER_MODEL,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"task_list",
|
||||||
|
models.ForeignKey(
|
||||||
|
null=True,
|
||||||
|
on_delete=django.db.models.deletion.CASCADE,
|
||||||
|
to="todo.TaskList",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
options={"ordering": ["priority", "created_date"]},
|
||||||
|
),
|
||||||
|
migrations.RunPython(forward_data_migration, backward_data_migration),
|
||||||
|
migrations.AlterModelOptions(name="task", options={}),
|
||||||
|
migrations.RemoveField(model_name="task", name="assigned_to"),
|
||||||
|
migrations.RemoveField(model_name="task", name="completed"),
|
||||||
|
migrations.RemoveField(model_name="task", name="completed_date"),
|
||||||
|
migrations.RemoveField(model_name="task", name="created_by"),
|
||||||
|
migrations.RemoveField(model_name="task", name="created_date"),
|
||||||
|
migrations.RemoveField(model_name="task", name="due_date"),
|
||||||
|
migrations.RemoveField(model_name="task", name="id"),
|
||||||
|
migrations.RemoveField(model_name="task", name="note"),
|
||||||
|
migrations.RemoveField(model_name="task", name="priority"),
|
||||||
|
migrations.RemoveField(model_name="task", name="task_list"),
|
||||||
|
migrations.RemoveField(model_name="task", name="title"),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='task',
|
model_name="task",
|
||||||
name='basetask_ptr',
|
name="basetask_ptr",
|
||||||
field=models.OneToOneField(auto_created=True, default=1, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='todo.BaseTask'),
|
field=models.OneToOneField(
|
||||||
|
auto_created=True,
|
||||||
|
default=1,
|
||||||
|
on_delete=django.db.models.deletion.CASCADE,
|
||||||
|
parent_link=True,
|
||||||
|
primary_key=True,
|
||||||
|
serialize=False,
|
||||||
|
to="todo.BaseTask",
|
||||||
|
),
|
||||||
preserve_default=False,
|
preserve_default=False,
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue