在Django Admin中,如果想要显示没有标签的ReadOnlyFields,可以通过自定义Admin类来实现。以下是实现的步骤: 1. 创建一个新的Admin类,继承自Django的admin...
在admin.py中导入相应的模型和admin类: 首先,你需要在你的admin.py文件中导入Django的admin模块,以及你想要设置只读的模型。 python from django.contrib import admin from .models import YourModel # 替换为你的模型名称 创建一个该模型的Admin类,并设置其readonly_fields属性: 接下来,你需要为你的模型创建...
所以在form.py文件中对在readonly_fields 列表里的字段添加一个 disabled 样式 for field_name,field_obj in cls.base_fields.items(): # 根据 cls.base_field 的特性给每个字段加上样式 field_obj.widget.attrs['class'] = 'form-control' if field_name in admin_class.readonly_fields: field_obj.widge...
class AnchorBindAgentAdmin(admin.ModelAdmin): def get_readonly_fields(self, request, obj=None): """ Hook for specifying custom readonly fields. """ # 本想用 path 里的 add 来判断 print(request.path) # 根据 obj 是否为空来判断 if obj: self.readonly_fields = ["agent", "anchor"] els...
Django笔记三十五之admin后台界面介绍 这一篇介绍一下 Django 的后台界面使用。 Django 自带了一套后台管理界面,可用于我们直接操作数据库数据,本篇笔记目录如下: 创建后台账号以及登录操作 注册后台显示的数据表 列表字段的显示操作 字段值的修改操作 列表页的执行操作 ...
1、admin的实现方式是,在自定义admin里添加readonly_fields字段,然后在admin里修改的时候,对应的字段就只是显示在前端,不会被修改。 admin上显示如图所示,只有显示,没有修改功能: 三、功能开发 1、在baseadmin里添加readonly_fields: 2、在自定义admin里添加对应的字段 ...
admin.site.register(Blog, BlogAdmin)上面方法是将管理器和注册语句分开。有时容易忘记写注册语句,或者模型很多,不容易对应。还有一种方式是用装饰器,该方法是Django1.7的版本新增的功能:1 2 3 4 5 6 7 from django.contrib import admin from blog.models import Blog #Blog模型的管理器 @admin.register(Blog...
Admin readonly_fields pointing to properties (@property) do not get escaped. 汇报人:Eran Rundstein属主:Baptiste Mispelon 组件:contrib.admin版本:1.7 严重性:Normal关键词: 抄送:Triage Stage:Accepted Has patch:否Needs documentation:否 Needs tests:否Patch needs improvement:否...
if not request.user.is_superuser and request.user.username=='readonly': return [f.name for f in self.model._meta.fields] return self.readonly_fields 在Admin类中新增红色部分 root用户登录django界面,新建readonly用户,并赋予change权限即可(用户必须有change权限) ...
class BlogAdmin(admin.ModelAdmin): list_display=('id', 'caption', 'author', 'publish_time') 1. 2. 3. 4. 5. 6. 7. 该方式比较方便明显,推荐用这种方式。 2、admin界面汉化 默认admin后台管理界面是英文的,对英语盲来说用起来不方便。可以在settings.py中设置: ...