takahe/activities/migrations/0002_fan_out.py

104 lines
3.4 KiB
Python

# Generated by Django 4.1.3 on 2022-11-12 05:36
import django.db.models.deletion
import django.utils.timezone
from django.db import migrations, models
import activities.models.fan_out
import stator.models
class Migration(migrations.Migration):
dependencies = [
("users", "0001_initial"),
("activities", "0001_initial"),
]
operations = [
migrations.AddField(
model_name="post",
name="authored",
field=models.DateTimeField(default=django.utils.timezone.now),
),
migrations.AlterField(
model_name="post",
name="author",
field=models.ForeignKey(
on_delete=django.db.models.deletion.PROTECT,
related_name="posts",
to="users.identity",
),
),
migrations.AlterField(
model_name="post",
name="mentions",
field=models.ManyToManyField(
blank=True, related_name="posts_mentioning", to="users.identity"
),
),
migrations.AlterField(
model_name="post",
name="to",
field=models.ManyToManyField(
blank=True, related_name="posts_to", to="users.identity"
),
),
migrations.CreateModel(
name="FanOut",
fields=[
(
"id",
models.BigAutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
("state_ready", models.BooleanField(default=True)),
("state_changed", models.DateTimeField(auto_now_add=True)),
("state_attempted", models.DateTimeField(blank=True, null=True)),
("state_locked_until", models.DateTimeField(blank=True, null=True)),
(
"state",
stator.models.StateField(
choices=[("new", "new"), ("sent", "sent")],
default="new",
graph=activities.models.fan_out.FanOutStates,
max_length=100,
),
),
(
"type",
models.CharField(
choices=[("post", "Post"), ("boost", "Boost")], max_length=100
),
),
("created", models.DateTimeField(auto_now_add=True)),
("updated", models.DateTimeField(auto_now=True)),
(
"identity",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="fan_outs",
to="users.identity",
),
),
(
"subject_post",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.CASCADE,
related_name="fan_outs",
to="activities.post",
),
),
],
options={
"abstract": False,
},
),
]