首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Django admin中设置具有详细名称的模型属性的HTML样式

,可以通过自定义模型字段的显示方式来实现。以下是一种可能的解决方案:

  1. 创建一个自定义的模型字段类,继承自Django的原始字段类,例如CharField或TextField。
代码语言:txt
复制
from django.db import models

class CustomCharField(models.CharField):
    def __init__(self, *args, **kwargs):
        self.detail_name = kwargs.pop('detail_name', '')  # 获取详细名称参数
        super().__init__(*args, **kwargs)

    def formfield(self, **kwargs):
        formfield = super().formfield(**kwargs)
        formfield.widget.attrs.update({'class': 'custom-field'})  # 添加自定义CSS类名
        return formfield

    def get_detail_name(self):
        return self.detail_name
  1. 在模型中使用自定义字段类替代原始字段类,并传递详细名称参数。
代码语言:txt
复制
from django.db import models

class MyModel(models.Model):
    my_field = CustomCharField(max_length=100, detail_name='详细名称')
  1. 创建一个自定义的Django admin样式文件,例如admin.css,定义.custom-field类的样式。
代码语言:txt
复制
.custom-field {
    /* 添加你想要的样式,例如加粗、颜色等 */
    font-weight: bold;
    color: blue;
}
  1. 在Django admin中注册模型,并指定使用自定义样式文件。
代码语言:txt
复制
from django.contrib import admin
from .models import MyModel

class MyModelAdmin(admin.ModelAdmin):
    class Media:
        css = {
            'all': ('admin.css',),
        }

admin.site.register(MyModel, MyModelAdmin)

这样,在Django admin中显示的模型属性字段将应用自定义的HTML样式,并且可以通过自定义字段类的get_detail_name方法获取详细名称。

请注意,以上解决方案仅为示例,你可以根据实际需求进行调整和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券