Django项目:CRM(客户关系管理系统)--11--04PerfectCRM实现King_admin注册功能03

Django项目:CRM(客户关系管理系统)--11--04PerfectCRM实现King_admin注册功能03

 #base_admin.py
#Django admin 注册功能的形式
# sites = {
# 'crm':{
# 'customers':CustomerAdmin,
# 'customerfollowup':CustomerFollowUPAdmin,
# }
# } class AdminRegisterException(Exception): #自定义异常
def __init__(self,msg):
self.message = msg class BaseAdmin(object):#自定义方法
list_display = () registered_sites={}
def register(model,admin_class=None): #默认值None 使用 BaseAdmin
app_name = model._meta.app_label#用内置方法获取 APP名字 (crm)
model_name = model._meta.model_name#用内置方法获取 表名 (Customer)
if app_name not in registered_sites:
registered_sites[app_name] = {} #创建 crm={}
if model_name in registered_sites[app_name]:
raise AdminRegisterException("app [%s] model [%s] has already registered!异常"
%(app_name,model_name))#自定义异常
if not admin_class:
admin_class = BaseAdmin #默认值None 使用class BaseAdmin
registered_sites[app_name][model_name] = admin_class #注册APP

#base_admin.py

Django项目:CRM(客户关系管理系统)--11--04PerfectCRM实现King_admin注册功能03

 #kingadmin.py
# ————————04PerfectCRM实现King_admin注册功能————————
from crm import models
#print("kingadmin crm",models.Customer)
from king_admin.base_admin import register,BaseAdmin #04客户信息表
class CustomerAdmin(BaseAdmin):#定制Djanago admin
list_display = ('id', 'qq', 'source', 'consultant', 'content', 'date') # 显示字段表头 register(models.Customer,CustomerAdmin)
register(models.CourseRecord) # ————————04PerfectCRM实现King_admin注册功能————————

#kingadmin.py

Django项目:CRM(客户关系管理系统)--11--04PerfectCRM实现King_admin注册功能03

 #views.py
from django.shortcuts import render # from django import conf #配置文件
# print("dj conf:",conf) #配置文件
# print("dj conf:",conf.settings)#配置文件.设置 from king_admin import app_config #自动调用 动态加载类和函数 from king_admin.base_admin import registered_sites # registered_sites={} def app_index(request):
# for app in conf.settings.INSTALLED_APPS:
# print(app)#循环打印 配置文件.设置.安装应用程序#.Perfectcustomer\settings里的INSTALLED_APPS列表 print("registered_sites",registered_sites)
return render(request, 'king_admin/app_index.html')

#views.py

Django项目:CRM(客户关系管理系统)--11--04PerfectCRM实现King_admin注册功能03

 #views.py
from django.shortcuts import render # from django import conf #配置文件
# print("dj conf:",conf) #配置文件
# print("dj conf:",conf.settings)#配置文件.设置 from king_admin import app_config #自动调用 动态加载类和函数 # from king_admin.base_admin import registered_sites # registered_sites={}
from king_admin import base_admin def app_index(request):
# for app in conf.settings.INSTALLED_APPS:
# print(app)#循环打印 配置文件.设置.安装应用程序#.Perfectcustomer\settings里的INSTALLED_APPS列表 # print("registered_sites",registered_sites)
# return render(request, 'king_admin/app_index.html') print("registered_sites", base_admin.registered_sites)
return render(request, 'king_admin/app_index.html')

#views.py


如果感觉本章博客对您有帮助,请尽情打赏吧!

Django项目:CRM(客户关系管理系统)--11--04PerfectCRM实现King_admin注册功能03Django项目:CRM(客户关系管理系统)--11--04PerfectCRM实现King_admin注册功能03

上一篇:Django项目:CRM(客户关系管理系统)--72--62PerfectCRM实现CRM讲师讲课记录


下一篇:Django项目:CRM(客户关系管理系统)--84--74PerfectCRM实现CRM权限和权限组限制访问URL