Django截图笔记之Django开发资产管理系统

2.表结构

通过tools里面的Run manage.py task选项可以调出窗口,在弹出的窗口里面输入提交表单命令会有提示符,更加方便

点击+号增加行数,点击绿色箭头上传当前数据

3.2展示登录页面

第一步,写urls

第二步,写views

第三步,写HTML文件

用户登录成功之后,服务器会给用户返回一个cookie,如下图的sessionid。用户提交的用户名密码会存储到服务器的session里面,下次登录时会去里面校验信息对不对

第一步,加上写入session的代码

第二步,代码添加登录校验

中间键体现在代码中就是一个类,如下图

此时需要参考上面的写上一个类,比如,这样每次发送和返回都会经过这个中间件

为了以后开发方便,可以给request赋值,后面直接在函数里面取值

6.部门管理

6.1部门列表

先把页面做出来,再显示表格数据

1.导航和注销

效果如下,右上角显示当前登录的用户名

注销

第一步,让其返回depart_list.html

第二步,引入JS等插件

第三步,增加注销操作

第四步,增加注销函数

2.展示数据

增加一些按钮

效果

创建一个layout.html作为母版,block区域作为占位符,别的模板只写block区域即可

CSS和JS可能也需要重写,所以也给其加上block

第一步,添加链接

第二部,添加关系

第三步,编写函数

第四步,编写html页面

 删除部门

第一步

第二步

第三步

编辑部门

第一步,在html中加上这个功能

第二步,在url中增加视图函数

第三步,在试图函数中编写看页面和提交数据的功能

第四步,编写编辑部门的html

第一步,编写urls这样一个路由

第二步,编写视图函数

第三步,编写html

第四步,在数据库中添加数据

最终效果

不过当前有个问题是页面显示的数据不友好,比如分类那里显示的是数字,实际上应该显示数字代表的中文,怎么处理呢,用obj.get_category_display()函数即可解决,相当于让下面的choices显示中文。我们将其应用到html中

所属部门那里也是数字,这个又怎么解决呢,因为部门这里关联的是外键,我们可以用obj.depart.title的方法获取到外键关联到的这一行的所有数据,再通过“对象.”的方式获取到具体的值

先出创建一个Asserform类,后面的widget表示自动添加到html

以后主要用ModelForm

添加此功能的具体步骤

第一步,html里面添加链接

第二步,添加urls

第三步,在视图函数里面编写

第四步,编写asset_add相关的html

注意:使用此方法的话展示的数据可能不太对,会显示成下面这样

碰到这种情况,就去看外键是不是关联了表,比如这里的AssetSet类关联的是DepartMent,这个时候就需要在DepartMent类里面定义一个str方法,让它返回正确的值

如果想要ModelForm中的页面变的好看,需要用到bootstrap,比如下面再每个下拉框中给它加上一个from-control样式,但如果下拉框太多,不可能每一个都去后面添加一个attrs={'class': 'form-control'},此时可以用到init方法

在网页上添加错误验证功能,如果某个项没填给出提示

第一步,再html中加上post方法

第二步,编写POST请求的处理逻辑

第一步,html中传入地址,并且把ID传过去

第二步,urls中添加编辑相关地址

第三步,编写视图函数

第四步,编写html

 

第一步

第二步

 资产管理增加搜索和分页功能

 

 

前面的depart是外键,后面的title是外键对应的那张表,比如前面的depart就跨到部门那张表里面去了,后面的title就是在部门的表里找title那一列

 

基于Q查询的搜索

 

 

将分页的逻辑单独写成一个类

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值