1、admin

  a:models.py

     - 创建表

  b:admin.py

    - 注册表    admin.site.register(models.UserInfo)

  c:urls.py 

   - url(r'^admin/', admin.site.urls),

  PS: 

    1、动态生成url

    2、注册和生成url使用的都是admin.site

2、路由系统 

一个路径对应一个视图

url(r'^index/$', views.index,name="n1"), 
url(r'^index/(\d+)$', views.index,name="n2"), url(r'^blog/', include('blog.urls'))

有name的说明是反向解析,两种方式

代码中:
  reverse('n1')
  reverse('n2',args=(666,))

模板中:
  {% url 'n1' %}
  {% url 'n2' 666 %}

3、文件加载
  第一次导入后,再次导入时不再重新加载

4、面向对象

  - 封装

  - 继承

示例:

4,django-admin的简单回顾
 1 class Base(object):
 2     def init(self,val):
 3         self.val = val
 4 
 5     def func(self):
 6         self.test()
 7         print(self.val)
 8 
 9     def test(self):
10         print("Base.test")
11 
12 class Foo(Base):
13     def test(self):
14         print("FOO.test")
15 
16     # def func(self):
17     #     print(self.val,666)
18     #有就执行自己的,没有就执行父类的
19 class Bar(object):
20     def init(self):
21         self.register = {}
22 
23     def regiter(self,a,b=None):
24         if not b:
25             b=Base
26         self.register[a] = b(a)  #函数,类,对象
27 
28 obj = Bar()  #实例化就会去执行它自己的__init方法,并获取到一个对象b,b就可以调用里面的属性和方法了
29 obj.regiter(1,Foo)
30 obj.regiter(2)
31 print(obj._register)  #{1: <__main.Foo object at 0x0000000002213160>, 2: <__main.Base object at 0x0000000002213198>}
32 #obj._register[1] == Foo(1)
33 obj._register[1].func()  #Foo的对象  打印结果:FOO.test       1
34 obj._register[2].func()  #Base的对象  打印结果:Base.test     2
4,django-admin的简单回顾

三、具体来说django  -admin的用法

首先需要发现的,当我们创建登录admin的时候,里面会有增删改查,不仅仅是这些功能,我们可以通过以下的方式设置一些样式

1、admin路由规则:

4,django-admin的简单回顾
/admin/app01/role/           查看角色列表
/admin/app01/role/add/       添加角色
/admin/app01/role/2/change/  编辑
/admin/app01/role/2/delete/  删除


/admin/app01/userinfo/           /admin/应用名/表名
/admin/app01/userinfo/add/       /admin/应用名/表名/功能名
/admin/app01/userinfo/1/change/ /admin/app01/userinfo/1/delete/
4,django-admin的简单回顾

 

2、如何使用之具体操作http://www.cnblogs.com/wupeiqi/articles/7444717.html</span></p>

3、原理:

    - 路由关系

    - 对应视图函数

admin的使用

自定制admin

首先创建表:

4,django-admin的简单回顾
 1 from django.db import models
 2 class UserInfo(models.Model):
 3     name = models.CharField(max_length=32,verbose_name="用户名")
 4     email = models.EmailField(max_length=32,verbose_name="邮箱")
 5     ut = models.ForeignKey(to="UserType",verbose_name="所属类型")
 6 
 7 
 8 class UserType(models.Model):
 9     caption = models.CharField(max_length=32,verbose_name="用户类型名称")
10     roles = models.ManyToManyField(to="Role",verbose_name="所属角色")
11 
12 class Role(models.Model):
13     name = models.CharField(max_length=32,verbose_name="角色名")
4,django-admin的简单回顾

相关文章:

  • 2021-07-31
  • 2021-08-29
  • 2022-02-08
  • 2021-11-21
  • 2021-09-26
  • 2021-07-18
  • 2022-01-16
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-08-23
  • 2022-12-23
  • 2021-12-02
  • 2021-07-27
  • 2021-04-22
相关资源
相似解决方案