from django.contrib import admin
from . import models
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
admin.site.register(models.UserInfo, UserInfoAdmin)
admin.site.register(models.UserGroup)
通过装饰器的方式自定义配置类
@admin.register(models.UserInfo) #使用装饰器的方法,注册表到admin
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
# admin.site.register(models.UserInfo,UserInfoAdmin) #支持表名使用[models.UserInfo,models.Group],共同使用UserInfoAdmin配置,一般不常用
admin.site.register(models.UserGroup)
from django.contrib import admin
from . import models
from django.utils.safestring import mark_safe
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','xx',] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
def xx(self,obj): #obj =当前行的对象
# return '自定义列'+obj.name
tpl=mark_safe('<a href="http://news.baidu.com/?tn=news/">链接</a>'.format(obj.pk))
return tpl
admin.site.register(models.UserInfo,UserInfoAdmin)
admin.site.register(models.UserGroup)
from django.contrib import admin
from . import models
from django.utils.safestring import mark_safe
# @admin.register(models.UserInfo) #使用装饰器的方法,注册表到admin
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','xx',] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
list_display_links = ['name','nickname'] #定制可以跳转的字段
def xx(self,obj): #obj =当前行的对象
# return '自定义列'+obj.name
tpl=mark_safe('<a href="http://news.baidu.com/?tn=news/">链接</a>'.format(obj.pk))
return tpl
admin.site.register(models.UserInfo,UserInfoAdmin) #支持表名使用[models.UserInfo,models.Group],共同使用UserInfoAdmin配置,一般不常用
admin.site.register(models.UserGroup)
from django.contrib import admin
from . import models
from django.utils.safestring import mark_safe
# @admin.register(models.UserInfo) #使用装饰器的方法,注册表到admin
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname',] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
list_display_links = ['name','nickname',] #定制可以跳转的字段
list_filter = ['group','name'] #定制右侧筛选条件
# def xx(self,obj): #obj =当前行的对象
# # return '自定义列'+obj.name
# tpl=mark_safe('<a href="http://news.baidu.com/?tn=news/">链接</a>'.format(obj.pk))
# return tpl
admin.site.register(models.UserInfo,UserInfoAdmin) #支持表名使用[models.UserInfo,models.Group],共同使用UserInfoAdmin配置,一般不常用
admin.site.register(models.UserGroup)
自定制筛选分组 和页面数据筛选条件
from django.contrib import admin
from . import models
from django.utils.translation import ugettext_lazy as _
from django.utils.safestring import mark_safe
# @admin.register(models.UserInfo) #使用装饰器的方法,注册表到admin
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','group'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
# list_display_links = ['name','nickname',] #定制可以跳转的字段
#自定制 分组 和筛选的条件
class Ugg(admin.SimpleListFilter):
title = _('圣诞快乐的解决')
parameter_name = 'xxxxxx' #点击组名 a标签携带的值,执行queryset方法
def lookups(self, request, model_admin):
"""
显示筛选选项
:param request:
:param model_admin:
:return:
"""
return models.UserGroup.objects.values_list('id','title')
def queryset(self, request, queryset):
"""
点击筛选查询时候,筛选用户表符合筛选条件的内容
"""
v = self.value()
if v:
return queryset.filter(group_id=v)
else:
return queryset # print(queryset) #查询userinfo表的全部数据
list_filter = ['group',Ugg] #定制右侧筛选条件,通用场景把组里所有的人列出来
# def xx(self,obj): #obj =当前行的对象
# # return '自定义列'+obj.name
# tpl=mark_safe('<a href="http://news.baidu.com/?tn=news/">链接</a>'.format(obj.pk))
# return tpl
admin.site.register(models.UserInfo,UserInfoAdmin) #支持表名使用[models.UserInfo,models.Group],共同使用UserInfoAdmin配置,一般不常用
admin.site.register(models.UserGroup)
list_per_page = 1 #一页显示数据库中多少条数据
list_max_show_all = 200 #最大显示行数
paginator = Paginator
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_editable = ['nickname', ] #进入编辑模式
list_display = ['name','nickname','group']
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
search_fields = ('name',)
list_display = ['name','nickname','group'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','group','ctime'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
fields = ['name','nickname'] #定义显示页面,显示的字段
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','group','ctime'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
exclude = ['name'] #定义显示页面,不显示的字段
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','group','ctime'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
readonly_fields = ['name']
@admin.register(models.UserInfo)
class UserInfoAdmin(admin.ModelAdmin):
fieldsets = (
('基本数据', {
'fields': ('user', 'pwd', 'ctime',)
}),
('其他', {
'classes': ('collapse', 'wide', 'extrapretty'), # 'collapse','wide', 'extrapretty'
'fields': ('user', 'pwd'),
}),
)
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','group','ctime'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
filter_vertical = ("roles",) #选中多对多字段时,上下显示
filter_horizontal=('roles') #选中多对多字段时,左右显示
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','group','ctime'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
# ordering = ('id',) #按id大小 排序显示
ordering = ('-id',)#倒序显示
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','group','ctime'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
def view_on_site(self, obj):
return 'https://www.baidu.com'
radio_fields = {"ug": admin.VERTICAL} # 或admin.HORIZONTAL
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','group','ctime'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
search_fields = ('user',)
show_full_result_count = True # 1 result (12 total)
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','group','ctime'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
prepopulated_fields = {"email": ("name", "nickname",)}
from django.contrib import admin
from django.core.paginator import Paginator
from . import models
from django.utils.translation import ugettext_lazy as _
from django.utils.safestring import mark_safe
from django.forms import ModelForm
from django.forms import fields
class MyForm(ModelForm):
others = fields.CharField()
class Meta:
model = models = models.UserInfo
fields = "__all__"
error_messages = {'name': {'required': '用户不能为空'}}
# @admin.register(models.UserInfo) #使用装饰器的方法,注册表到admin
class UserInfoAdmin(admin.ModelAdmin): #必须继承admin.ModelAdmin基础配置类
list_display = ['name','nickname','group','ctime'] #列表中 包含数据库中哪个字段,就在DjangoAdmin页面显示哪个字段
form = MyForm
@admin.register(models.UserInfo)
class UserInfoAdmin(admin.ModelAdmin):
empty_value_display = "列数据为空时,默认显示"
list_display = ('user','pwd','up')
def up(self,obj):
return obj.user
up.empty_value_display = "指定列数据为空时,默认显示"
基于Nginx+Supervisord+uWSGI+Django1.11.1+Python3.6.5构建