码迷,mamicode.com
首页 > 编程语言 > 详细

python Stark 组件

时间:2018-03-17 19:49:08      阅读:1427      评论:0      收藏:0      [点我收藏+]

标签:效果   合成   request   前端   blog   执行文件   font   保存   foo   

 

Django Admin 是对model中 对应的数据表进行增删改查的组件,对每个APP下面已注册的model表进行增删改查。而stark组件仿照Admin组件开发。

Admin的常用配置:

技术分享图片

技术分享图片

 Filedstes

  使用方法和效果如下图

 技术分享图片

技术分享图片

 

Action

  使用方法和效果图

   需要在My_AppConfig(admin.ModeAdmin)中编写自定义函数

  需要注意的:(1)该函数在select下拉框中 作为value值

        (2)该函数有两个参数,分别是request、queryset

        (3)前端的复选框,前端整合成一个字典。字典的键:复选框的name,字典的值:列表类型,存储valu

技术分享图片

定义的foo会在前端action的select 下拉框,函数名当作value

技术分享图片

点击go ,根据select下拉框中的value,值,就是刚才定义的函数名发送后端,后端拿到这个值,找到这个函数并执行。
技术分享图片

Admin 的使用两个场景:

  1)admin 配置url

  2)注册model

  注意:每个APP下有个admin模块

使用流程

1、当django项目启动时,admin应用首先扫描(加载)每个APP下面的每个admin.py 文件

自执行函数,autodiscover()执行扫描,扫描

技术分享图片

技术分享图片

2、每个admin文件导入admin模块时,生成site对象、

  注意:admin.site.registry(Book),注册时,_registry{}字典保存的键是model 中的类名,值是model的管理类的AdminClass类

技术分享图片

3、使用site对象注册model 中的类名

4、生成已注册model类的增删改查url

 知识点:
1、同一模块重复调用,文件只加载一次
2、基于模块的单例模式,第一次生成对象时,会生成一个内存空间_instance,当第二次生成时,_instance有值,会把该对象的内存指向上一次对象的内存空间

技术分享图片

技术分享图片

技术分享图片

路由分发

一条url有正则和相对应的函数组成,路由分发则是把对应的函数转变成一个元组。元组包括一个列表,和两个None值

技术分享图片

仿照admin开发的过程中,目的是生成model对应的url,需要获取该model所在APP的名字和mode的名字.

使用my_model._meta.model_name 获取

技术分享图片

自定义stark组件仿照admin:注意,在stark apps.py 配置文件中的类中,增加一个函数

    def ready(self):
        autodiscover_modules("stark_admin")

该函数的意义:——执行文件下的read方法——扫描startk文件

 注意:static 放在项目下面,需配置staticfiles 放在应用下面,无须配置。django扫描每个项目下面的static文件

request 请求:请求的url ,可以使用request.GET获取数据

 

 

 

 

 

 

 

 

 

 

 

2、

 

python Stark 组件

标签:效果   合成   request   前端   blog   执行文件   font   保存   foo   

原文地址:https://www.cnblogs.com/huyangblog/p/8590682.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!