python + django + echart 构建中型项目
1. python生产环境, 多层modules 导入问题:
多个modules 如何导入不同级别的包:
在每个modules下新建 __init__.py
import os, sys
dir_mytest = os.path.dirname(os.path.abspath(__file__)) # crontab 跑时 os.getcwd() 只会取到用户的路径....
sys.path.insert(0, dir_mytest+"tmp\\t1")
#sys.path.insert(0,os.getcwd())
在控制目录的执行文件中:
from module import py
如果是三层结构或者更多:
from module.submodule.submodule.py import *
2. django 结构:
->1. 在admin层 urls.py 设置路由:
# 导入app模块的控制层
from app_name import views
urlpatterns = [
#path('admin/', admin.site.urls),
path('index/', views.index)
]
->2. 在app业务处理层 views.py 编写处理逻辑:
#导入HttpResponse模块
from django.shortcuts import HttpResponse
def index(request):
return HttpResponse("hello world")
在此可以进行python的业务编码处理。
->3. 在app业务处理层, settings.py 设置数据库连接:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app_name'
]
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #此项不变
'NAME': 'mydata', #设置的数据库名称
'USER': 'root', #mysql 的登录用户名
'PASSWORD': '123456', #mysql的登录密码
'HOST': 'localhost', #默认为127.0.0.1
'PORT': '3306', #默认端口:3306
'charset': 'utf8',
}
}
import pymysql
pymysql.install_as_MySQLdb()
conda install mysqlclient=1.3.13
mysqlclient 1.3.3 or newer is required; you have 0.7.11.None
通过查找路径C:\Programs\Python\Python36-32\Lib\site-packages\Django-2.0-py3.6.egg\django\db\backends\mysql\base.py
这个路径里的文件把
if version < (1, 3, 3):
raise ImproperlyConfigured("mysqlclient 1.3.3 or newer is required; you have %s" % Database.__version__)
query = query.decode(errors='replace')
将这段代码注释掉
########### pyecharts ##############################################################
安装pyecharts: pip install pyecharts
script_list 是 Page() 类渲染网页所需要依赖的 echarts js 库,依赖的库的数量取决于所要渲染的图形种类。
echarts js 库的地址,默认的地址为 http://chfw.github.io/jupyter-echarts/echarts
在app_name下, 创建templates目录;
-> 在该目录下:
:创建一个static:存放echarts.js
: 创建一个pyecharts.html:
<head>
<meta charset="utf-8">
<title>Proudly presented by PycCharts</title>
{% for jsfile_name in script_list %}
{% load staticfiles %}
<!-- <script src="{% static '/echarts/{{jsfile_name}}.js' %}"></script> -->
<script src="/static/echarts/{{jsfile_name}}.js"></script>
{% endfor %}
</head>
<body>
<!--|safe 过滤器, 不对字符串进行转义-->
{{myechart|safe}}
</body>
######################## debug ###############################
报错:
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position 9737:
打开:
File "E:\software\Anaconda\lib\site-packages\django\views\debug.py", line 332, in get_traceback_html
t = DEBUG_ENGINE.from_string(fh.read())
在331行修改: .open(encoding="utf-8") as fh
python + django + echart 构建中型项目的更多相关文章
- Python Django(WEB电商项目构建)
(坚持每一天,就是成功) Python Django Web框架,Django是一个开放源代码的Web应用框架,由Python写成.采用了MTV的框架模式,即模型M,模板T和视图V组成. 安装Pyth ...
- python+Django创建第一个项目
1.首先搭建好环境 1.1 安装pyhton,Linux系统中,python是系统自带的所以就不用安装 1.2 安装Django框架 使用pip安装: pip install django 1.3 检 ...
- 如何使用seajs+jQuery构建中型项目
为何有这种想法? 由于最近做的项目是用jquery+seajs集成的,所以就突发奇想 如何使用seajs+jquery能更好的构建项目,比如能解决模块化,模块与模块之间的依赖,文件上线后打包,压缩等能 ...
- python django -7 Git与项目
git的使用,主要包括: 本地仓库的命令 远程仓库的命令 项目需求.页面.模型类的设计,及页面的使用 Git简介 Git是目前世界上最先进的分布式版本控制系统 安装 sudo apt-get inst ...
- python django 重新安装不能创建项目
这里仅给大家做个思路提醒: 1.如果在别的地方找到一样的问题那就按别的方法去解决 2.如果是创建startproject的时候 报错:no module named 'mysite' 这个的话就和 ...
- Django-Multitenant,分布式多租户数据库项目实战(Python/Django+Postgres+Citus)
Python/Django 支持分布式多租户数据库,如 Postgres+Citus. 通过将租户上下文添加到您的查询来实现轻松横向扩展,使数据库(例如 Citus)能够有效地将查询路由到正确的数据库 ...
- Python Django CMDB项目实战之-3创建form表单,并在前端页面上展示
基于之前的项目代码 Python Django CMDB项目实战之-1如何开启一个Django-并设置base页.index页.文章页面 Python Django CMDB项目实战之-2创建APP. ...
- Python Django CMDB项目实战之-2创建APP、建模(models.py)、数据库同步、高级URL、前端页面展示数据库中数据
基于之前的项目代码来编写 Python Django CMDB项目实战之-1如何开启一个Django-并设置base页index页文章页面 现在我们修改一个文章列表是从数据库中获取数据, 下面我们就需 ...
- Python Django CMDB项目实战之-1如何开启一个Django-并设置base页、index页、文章页面
1.环境 win10 python 2.7.14 django 1.8.2 需要用到的依赖包:MySQLdb(数据库的接口包).PIL/pillow(处理图片的包) 安装命令: pip install ...
随机推荐
- 避免Linux上错删文件
前言 在linux上我们常见的问题就是一个操作不小心误删除文件,而且在linux想要恢复文件没这么简单.只有当每次删除之后才后悔莫及,参考windows中最常见的做法就是给系统装一个回收站,让每次删除 ...
- 4.3dotnet watch run「深入浅出ASP.NET Core系列」
希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. dotnet run的麻烦 如果您使用的是vs code进行跨平台开发,那么dotnet watch run对你的 ...
- 玩转SpringBoot之定时任务详解
序言 使用SpringBoot创建定时任务非常简单,目前主要有以下三种创建方式: 一.基于注解(@Scheduled) 二.基于接口(SchedulingConfigurer) 前者相信大家都很熟悉, ...
- hosts文件的作用
hosts文件的作用 hosts文件是一个没有扩展名的系统文件,可以用记事本等工具打开,作用就是将一些常用的网址域名与其对应的IP地址建立一个关联"数据库",当用户在浏览器中输入一 ...
- maven的安装和环境配置
一.下载maven Apache Maven下载地址:http://maven.apache.org/download.cgi 二.maven的安装 将下载好的安装文件解压到d盘根目录下即可(当然,这 ...
- QuickBI助你成为分析师——计算字段功能
摘要: 在用户创建报表时,通过现有字段数据不能直接满足展示需求,需要进行一定建模操作.目前产品支持在数据集编辑界面进行初步建模,下面主要介绍新建字段功能,以达到展示需求. 在用户创建报表时,有时通过现 ...
- nodejs异步转同步
项目在微信环境开发,需要获取access_token进行授权登录和获取用户信息. 特意把这块功能拿出来封装一个自定义module module.exports = new Wechat(con.app ...
- Web 性能优化:Preload与Prefetch的使用及在 Chrome 中的优先级
摘要: 理解Preload与Prefetch. 原文:Web 性能优化:Preload,Prefetch的使用及在 Chrome 中的优先级 作者:前端小智 Fundebug经授权转载,版权归原作者所 ...
- 学习day01
1.web C/S:Client Server 客户端 服务器 QQ,... B/S:Browser Server 浏览器 服务器 PC机:Personal Computer 个人电脑 2.HTML ...
- 《JavaScript高级程序设计》笔记:事件(十三)
事件流 事件冒泡 IE的事件流叫做事件冒泡,即事件开始时由最具体的元素接收,然后逐级向上传播到较为不具体的节点(文档).如下代码: <body> <div id="myDi ...