2

我正在尝试通过自己创建一个博客来学习 django,并且我之前尝试过一些真正简单的步骤,但现在我想做一些稍微复杂的事情。目前,我正在考虑将博客的“故事”划分为“块”。我的想法是有两个子类“TextBlock”和“ImageBlock”,我当前的模型看起来像这样。

class Story(models.Model):
    writer = models.CharField(max_length=189)
    title = models.CharField(max_length=189)


class Block(models.Model):
    story = models.ForeignKey(Story, related_name='+', on_delete=models.CASCADE)
    block = EnumField(choices=[
        ('TXT', "text"),
        ('IMG', "image"),
    ])
    serial = models.IntegerField(default=0)

    date_created = models.DateTimeField(auto_now_add=True)
    date_modified = models.DateTimeField(auto_now=True)


class TextBlock(Block):
    type = models.CharField(max_length=128, blank=True, null=True, default='paragraph')
    content = models.TextField(blank=True, null=True)


class ImageBlock(Block):
    src = models.URLField()
    type = models.CharField(max_length=128, blank=True, null=True, default='full')
    title = models.CharField(max_length=189, blank=True, null=True)
    photographer = models.CharField(max_length=128, blank=True, null=True)

我现在想做的是从 django 管理界面创建博客条目。是否可以从主块创建两种类型?还是我需要同时访问 TextBlock 和 ImageBlock?关于我应该如何从这里开始的任何想法?谢谢。

4

0 回答 0