首页 > 解决方案 > Django-photologue:在保存期间自动生成图像标题和 slug

问题描述

我在我的项目中使用 Django-Photologue。如果未指定,我想在保存期间自动生成图像标题,slug。作为 Django 的新手,我不知道该怎么做。如果我必须自定义 Django-photologue,那我应该怎么做呢?

感谢您的答复。我愿意使用您建议的愚蠢方法。想做这样的事情。但是我应该如何自定义 photologue.Photo 类?

目前我在 MatrimonyProfile 中有一个 Many2Many Key 关系与 photologue.Photo 像这样

images = models.ManyToManyField("photologue.Photo", through="Image", blank=True)

和通过模型的图像

class Image(BaseModel):

profile = models.ForeignKey(MatrimonyProfile, on_delete=models.CASCADE)
photo = models.ForeignKey(
    "photologue.Photo", on_delete=models.CASCADE, related_name="+"
)

primary = models.BooleanField(default=False, blank=True)

请帮助在哪里以及如何自定义 photologue.Photo 以输入默认标题

就像现在我必须输入标题在此处输入图像描述

标签: djangodjango-photologue

解决方案


在保存过程中自动生成 slug 非常简单,如下例所示:

from django.utils.text import slugify

def save(self, *args, **kwargs):
        self.slug = slugify(self.title, allow_unicode=True)
        super().save(*args, **kwargs)

对于图像标题,手动添加它更容易(由用户输入)。否则,如果您想自动生成图像的标题,则必须继续进行模式识别,而这不仅仅是复杂的。


推荐阅读