我正在尝试通过自己创建一个博客来学习 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?关于我应该如何从这里开始的任何想法?谢谢。