python2.0_s12_day19_前端模版使用
Django中引用bootstrap
实现在前端可以创建客户信息,可以修改客户信息
我们需要设计一个前端用户交互系统.
我们在设计之前,讨论一些需求:
前端实现:
1. 不同角色的用户,看到的东西是不一样的
销售:
客户纪录
能修改自己的纪录
不能修改别人的纪录
可以看本校区的所有客户纪录(不能修改别人的)
老师:
创建上课纪录,点名,批作业,管理班级
学员:
查看自己的成绩,
交作业
介绍学员
建议投诉
角色结合权限来实现上述需求,这些都实现对于现在的我们要花很长时间的.
那么今天我们不讲这些,我们更多讲的是简单搞一搞页面.
首先我们要做前端,现在主流写前端都是用bootstrap和jQuery
所以我们要在自己的项目中加入这两个.具体如何加入并使用:
1.首先先下载bootstrap和jQuery
bootstrap-3.3.5-dist
jquery-3.1.0.min.js
2.在Django Project中创建静态文件目录,并配置settings.py文件.
bootstrap和jquery都属于静态文件,在Django project中一般创建一个目录statics用于存放静态文件.

然后我们把bootstrap-3.3.5-dist下的文件拷贝到该静态文件目录下.

我们知道bootstrap要基于jquery,所以我们把jquery-3.1.0.min.js文件也放到静态目录下.

准备工作完成!!!
我们要做一个系统,前端首先选好一个前端模版,对于我们来说完全没必要自己写一个.我们可以从bootstrap网站下一个前端模版,直接用.
3.下载一个合适的前端框架模版.
访问:www.bootcss.com
我们选择这么一个简单的后台系统的前端框架模版:http://v3.bootcss.com/examples/dashboard/
打开网址,选择另存为.将整个网页保存下来.
4.打开这个模版文件,查看源代码如下:

5.我们把下载下来的模版文件,放到templates目录下,作为基础模版,其它html模版都开发前都继承这个基础模版.

6. 配置urls.py文件.做一个二级路由的include

7. 在crm 目录下创建urls.py文件并配置(默认没有urls.py文件).

8. 创建dashboard首页.
我们知道一个Django Project项目中可能有多个app,那么每一个app 都有自己的首页和其它页面.页面的名称是有可能重复的.
所以我们应该在templates目录下为每一个app程序创建一个单独的目录,dashboard放在这个单独的目录下,如图:

9. 在dashboard文件中继承base.html基础文件

10. 在crm/views.py文件中定义dashboard视图函数.
from django.shortcuts import render
# Create your views here.
def dashboard(request):
return render(request,'crm/dashboard.html')
11. 上面完成,我们访问http://127.0.0.1:8000/crm,看下能否正常访问

我们看到访问正常,说明urls.py配置和views.py都没有问题.问题处在模版文件引入的js文件和css文件的地址不正确
12. 配置settings.py文件,声明静态文件的地址路径

13. 在base.html文件中,将地址更换成
/statics/bootstrap/js/
/statics/bootstrap/css/
14. 访问测试,依然报错

原因是什么?
首先我们看settings.py里是不是可以配置多个静态文件存放的目录,是一个列表.
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "statics"),
'/var/www/static/',
]
那么问题来了,我们在模版文件里引入css文件时,查找是从这个列表中所有的目录中查找的.你看我们前面在base.html中更改的
/statics/bootstrap/js/
/statics/bootstrap/css/
这路径都是写死的,如果找不到如何从/var/www/static/这个目录查找?
按照上面的写法肯定不行,Django强大的功能又展示了,它在这个列表上定义了一个别名.我们所有的css,js文件的调用,直接引入别名,这样就可以实现从多个目录中查找了.
这个别名的实现就是
STATIC_URL = '/static/'
随你我们的base.html应该改成:
/static/bootstrap/js/
/static/bootstrap/css/
15.最终访问,查看结果

上面的15个小步骤,算是把从bootstrap.com网站shang22
2
python2.0_s12_day19_前端模版使用的更多相关文章
- python2.0_s12_day19_前端结合后端展示客户咨询纪录
接下来就是将后台视图与前端页面结合起来了完成后台系统了.实现前端展示用户列表1.先在base.html代码中把模版中Dashboard下面的内容清空,如下: 具体删除哪些html代码,自己找吧.2.我 ...
- python2.0_day19_前端分页功能的实现
我们前面完成的客户纪录展示,只有4条,如果有上百条就不能在1页中全部展示了,那样是不人性化的.另外一次性取出来,数据量也比较大.假如现在有95条数据,我们想实现一个每页展示20条,那就分为5页.假如我 ...
- 如何在前端模版引擎开发中避免使用eval函数
前段时间,想着自己写一个简单的模版引擎,便于自己平时开发demo时使用.于是根据自己对模版引擎的理解,定义自己的模版格式,然后,根据自己定义的格式,编写处理函数,将模版标签中的字符串,解析成可执行的字 ...
- react前端模版Material-UI.类似于antd/bootstrap
Material-UI Material-UI是一个实现了Google's Material Design设计规范的react组件库,开箱即用,使用它可以快速搭建出赏心悦目的应用界面. 文档 各种模版 ...
- 为Python的web框架编写前端模版的教程
虽然我们跑通了一个最简单的MVC,但是页面效果肯定不会让人满意. 对于复杂的HTML前端页面来说,我们需要一套基础的CSS框架来完成页面布局和基本样式.另外,jQuery作为操作DOM的JavaScr ...
- Jquery 前端模版
<div id="div_demo"></div><script id="demo" type="text/x-jque ...
- SpringBoot集成前端模版(thymeleaf)
1.在application.properties配置文件中添加 thymeleaf 的配置信息 spring.datasource.driverClassName=com.mysql.jdbc.Dr ...
- 【超精简JS模版库/前端模板库】原理简析 和 XSS防范
使用jsp.php.asp或者后来的struts等等的朋友,不一定知道什么是模版,但一定很清楚这样的开发方式: <div class="m-carousel"> < ...
- python2.0_day19_充分使用Django_form实现前端操作后台数据库
在前面的<python2.0_day19_学员管理系统之前端用户交互系统>一节中,我们实现了前端展示customer客户纪录.在<python2.0_day19_前端分页功能的实现& ...
随机推荐
- SQLSERVER NULL值判断
sqlserver 在判断数据条件时,如果数据包含null的话则永远为false,null不参与判断,可以使用isnull(列,默认值)来判断null值的数据列,或者列 is null or 列的条件 ...
- my.cnf 配置详解
调整MySQL运行参数,修改/etc/my.cnf文件调整mysql运行参数重启MySQL后生效,在MySQL4版本以后,一部分内部变量可以在MySQL运行时设置,不过重启MySQL就失效了. mys ...
- Redis学习之(一)
Redis是一个开源,高级的键值存储和一个适用的解决方案,用于构建高性能,可扩展的Web应用程序. Redis有三个主要特点,使它优越于其它键值数据存储系统 - Redis将其数据库完全保存在内存中, ...
- Linux 网络子系统之网络协议接口层(一)
Linux 网络设备驱动之网络协议接口层介绍. 网络协议接口层最主要的功能是给上层协议提供透明的数据包发送和接收接口. 当上层ARP或IP需要发送数据包时,它将调用网络协议接口层的dev_queue_ ...
- CentOS 6编译安装yum和配置常用的yum源
安装环境:VPS,CentOS 6 + devel包 一.安装相应的软件 1.安装python 下载Python源码包 [root@akinlau ~]# wget http://www.python ...
- 修改Linux文件句柄限制
1. 添加ulimit -HSn 655350 到/etc/profile 2. 配置生效 source /etc/profile 修改linux文件句柄数 分类: LINUX 2010-09 ...
- 记一次坑爹的golang 二维map判断问题
记一次坑爹的golang 二维map判断问题 2018年10月18日 23:16:21 yinnnnnnn 阅读数:32更多 个人分类: golang 版权声明:本文为博主原创文章,未经博主允许不 ...
- RRD.so文件 rrdruby
ubuntu 12.04绑定rrdruby gem install librrd 用来装rrdruby,这样才能找到RRD.so文件然后在rb文件中加入这两句话: $: << '/path ...
- 用实现ajax读博客rss示例代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...
- 统一建模语言 UML
目录 统一建模语言 UML UML定义了5类10种模型图 一用例图用于建立需求模型 二静态图主要描述系统的静态表示和关系包括类图包图对象图 三行为图描述系统动态模型和对象组成的交换关系包括状态图和活动 ...