改变';更改模型类名称';在Django Admin中,更改';改变'&书信电报;h1>;

改变';更改模型类名称';在Django Admin中,更改';改变'&书信电报;h1>;,django,django-admin,Django,Django Admin,我知道: class MFM(models.Model): class Meta: verbose_name = 'my fancy Model' verbose_name_plural = 'my fancy Models' 但是,当我在Django Admin中编辑MFM时,它会显示“更改我喜欢的模型”。但我想让它说“我喜欢的模型上的设置”。您需要覆盖admin方法,并且您可以根据django admin响应的添加/更改页面上的要求更改标题。上下文数

我知道:

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

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

您需要覆盖admin方法,并且您可以根据django admin
响应的添加/更改页面上的要求更改标题。上下文数据['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)

您需要重写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)

干净,但我想要一个不太详细的解决方案。干净,但我想要一个不太详细的解决方案。