如何在Django Admin Page中编辑请求的参数?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Django Admin Page中编辑请求的参数?相关的知识,希望对你有一定的参考价值。

默认情况下,Django管理页面,基本上将提交的数据集自然地设置到数据库而无需任何数据编辑但是我想编辑它。

当我开发博客以使用Django管理员时,我在这样的表中有列

|标题| article_md | article_html

我想让article_html数据不能直接在django管理页面表单中编辑,而是从article_md的markdown样式数据生成html样式数据并提交到数据库。

我怎样才能做到这一点?有没有办法在model.py或admin.py中做一般的控制器?

class Article(models.Model):
    def __str__(self):
        return str(self.title)

    title = models.CharField(max_length=255)
    article_md = models.TextField(null=True)
    article_html = models.TextField(null=True)←I want it is generated by converting article_md's data
答案

model.朋友

class Article(models.Model):
    def __str__(self):
        return str(self.title)

    title = models.CharField(
        max_length=255
    )
    article_md = models.TextField(
        null=True
    )
    article_html = models.TextField(
        null=True
    )

    def save(self, *args, **kwargs):
        self.article_html = markdown.markdown(self.article_md, extensions=['gfm'])
        super(Article, self).save(*args, **kwargs)

admin.朋友

class ArticleAdmin(admin.ModelAdmin):
    exclude = ['article_html']
admin.site.register(Article, ArticleAdmin)

以上是关于如何在Django Admin Page中编辑请求的参数?的主要内容,如果未能解决你的问题,请参考以下文章