introduce story round and participants, extend models with additional information, replace initial migration
No need for backwards compatibility at this point, so just replace the migrationmaster
parent
03aee0abd6
commit
8aa459d2ef
@ -1,15 +1,36 @@
|
|||||||
from django.contrib.auth import get_user_model
|
from django.contrib.auth import get_user_model
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.db.models import CASCADE
|
from django.db.models import CASCADE
|
||||||
|
from django.urls import reverse
|
||||||
|
|
||||||
User = get_user_model()
|
User = get_user_model()
|
||||||
|
|
||||||
|
|
||||||
|
class StoryRound(models.Model):
|
||||||
|
name = models.CharField(max_length=256)
|
||||||
|
participants = models.ManyToManyField(User, through='Participant')
|
||||||
|
created = models.DateTimeField(auto_now_add=True)
|
||||||
|
number_of_rounds = models.IntegerField()
|
||||||
|
|
||||||
|
def get_absolute_url(self):
|
||||||
|
return reverse('writing:detail', kwargs={'pk': self.pk})
|
||||||
|
|
||||||
|
|
||||||
|
class Participant(models.Model):
|
||||||
|
user = models.ForeignKey(User, on_delete=CASCADE)
|
||||||
|
story_round = models.ForeignKey(StoryRound, on_delete=CASCADE)
|
||||||
|
order_by = models.IntegerField()
|
||||||
|
|
||||||
|
|
||||||
class Story(models.Model):
|
class Story(models.Model):
|
||||||
name = models.CharField(max_length=256, null=True, blank=True)
|
name = models.CharField(max_length=256, null=True, blank=True)
|
||||||
created = models.DateTimeField()
|
created = models.DateTimeField(auto_now_add=True)
|
||||||
|
part_of_round = models.ForeignKey(StoryRound, on_delete=CASCADE)
|
||||||
|
started_by = models.ForeignKey(User, on_delete=CASCADE)
|
||||||
|
|
||||||
|
|
||||||
class StoryPart(models.Model):
|
class StoryPart(models.Model):
|
||||||
user = models.ForeignKey(User, on_delete=CASCADE)
|
user = models.ForeignKey(User, on_delete=CASCADE)
|
||||||
|
previous_part = models.ForeignKey('StoryPart', on_delete=CASCADE, null=True, blank=True)
|
||||||
text = models.TextField()
|
text = models.TextField()
|
||||||
part_of = models.ForeignKey('Story', on_delete=CASCADE)
|
part_of = models.ForeignKey('Story', on_delete=CASCADE)
|
||||||
|
Loading…
Reference in new issue