【问题标题】:Change 'Change model class name' in Django Admin || Change the 'Change' <h1>在 Django Admin 中更改“更改模型类名称”||改变'改变' <h1>
【发布时间】:2018-03-06 09:15:05
【问题描述】:

我知道:

class MFM(models.Model):
    class Meta:
        verbose_name = 'my fancy Model'
        verbose_name_plural = 'my fancy Models'

但是当我在 Django Admin 中编辑 MFM 时,它会显示“更改我喜欢的模型”。但我想让它说“我喜欢的模型上的设置”。

【问题讨论】:

    标签: django django-admin


    【解决方案1】:

    您需要覆盖方法 fo admin,您可以根据 django admin response.context_data['title'] 的添加/更改页面的要求更改标题

    from .models import MFM
    class MFMAdmin(admin.ModelAdmin):
        def render_change_form(self, request, context, add=False, change=False, form_url='', obj=None):
            response = super(MFMAdmin, self).render_change_form(request, context, add, change, form_url, obj)
            response.context_data['title'] = "Settings on my fancy Models" if response.context_data['object_id'] else "Add my fancy Models"
            return response
    admin.site.register(MFM, MFMAdmin)
    

    【讨论】:

    • 干净,但我想要一个不那么冗长的解决方案。
    猜你喜欢
    • 2013-09-02
    • 1970-01-01
    • 2014-07-23
    • 1970-01-01
    • 2021-10-02
    • 1970-01-01
    • 1970-01-01
    • 2016-03-23
    • 2013-08-02
    相关资源
    最近更新 更多