day 82 URL分发
Posted 萌哥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了day 82 URL分发相关的知识,希望对你有一定的参考价值。
一 、admin 流程
(1) 启动
autodiscover_modules(‘admin‘, register_to=site)
(2) 注册
单例模式
admin.site=AdminSite(): 单例对象
class AdminSite(object):
def __init__(self, name=‘admin‘):
self._registry = {}
def register(self, model, admin_class=None, **options):
if not admin_class:
admin_class = ModelAdmin
self._registry[model] = admin_class(model, self) # {Book:ModelAdmin(Book)}
admin.site.register(Book) # admin.site._registry={Book:ModelAdmin(Book)}
admin.site.register(Publish) # admin.site._registry={Book:ModelAdmin(Book),Publish:ModelAdmin(Publish)}
class Authoconfig(admin.ModelAdmin):
pass
admin.site.register(Author,Authoconfig) # admin.site._registry={Book:ModelAdmin(Book),Publish:ModelAdmin(Publish),Author:Authoconfig(Author)}
二 、设计URL
为每个app下的model设计增删改查4个URL,以book为例。
127.0.0.1:8000/admin/app01/book/
127.0.0.1:8000/admin/app01/book/add
127.0.0.1:8000/admin/app01/book/1/change/
127.0.0.1:8000/admin/app01/book/1/delete
案例
以上是关于day 82 URL分发的主要内容,如果未能解决你的问题,请参考以下文章
python学习点滴记录-Day17-django-part2