python - 如何在 Django Movies 网站中添加系列和剧集?
问题描述
我创建了电影网站,现在我想创建models
可以选择连续剧然后添加连续剧和剧集的地方。例如,添加 Serial Vikings,然后我想添加第 1 季和第 1 集。最好的主意是什么?这是我的模特
class Serial(models.Model):
title = models.CharField(max_length=100)
slug = models.SlugField(max_length=255, unique=True, db_index=True, verbose_name="URL")
title_english = models.CharField(max_length=100)
descritpion = models.TextField(max_length=1000)
images = models.ImageField(upload_to="movies")
category = models.CharField(choices=CATEGORY_CHOICES, max_length=10)
language = models.CharField(choices=LANGUAGE_CHOICES, max_length=30)
status = models.CharField(choices=STATUS_CHOICES, max_length=100)
year_of_production = models.TextField(max_length=1000)
view_count = models.IntegerField(default=0)
def get_absolute_url(self):
return reverse('post', kwargs={"post_slug_serial": self.slug})
def __str__(self):
return self.title
我想我需要Django Many to many relationship
,但如何?谁能帮我 ?创建此任务的最佳方法是什么?
解决方案
您将需要一个ForeignKey
关系,因为连续剧会有许多季节,但相同的季节不会用于许多不同的连续剧。
例如: 除了《权力的游戏》之外,您不需要《权力的游戏》第一季来观看其他系列
你的模型看起来像:
class Serial(models.Model):
[..fields..]
class Season(models.Model):
serial = models.ForeignKey(Serial, on_delete=models.CASCADE)
class Episode(models.Model):
season = models.ForeignKey(Season, on_delete=models.CASCADE)
推荐阅读
- processing - 如何让物体(球)在 5 秒后移动?
- drive - 关于在同一个 LUN 上条带化 2 个分区的问题
- docker - 无法在生产模式下运行 konga docker
- python - 将图像分解为固定大小的图块
- excel - 比较两列,如果其中一列缺少值,则添加到其中[Excel]
- python - 如何在 Python 中启用基本身份验证调用函数
- ios - 应用过滤器后图像无法识别为 UIImage
- html - CSS Gradient 不适用于所有引导按钮类
- python - 如何使用 Python 的 Beautiful Soup 来查找自定义属性的值?
- rust - 同时修改一个切片/集合的多个元素