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 构建中型项目的更多相关文章

  1. Python Django(WEB电商项目构建)

    (坚持每一天,就是成功) Python Django Web框架,Django是一个开放源代码的Web应用框架,由Python写成.采用了MTV的框架模式,即模型M,模板T和视图V组成. 安装Pyth ...

  2. python+Django创建第一个项目

    1.首先搭建好环境 1.1 安装pyhton,Linux系统中,python是系统自带的所以就不用安装 1.2 安装Django框架 使用pip安装: pip install django 1.3 检 ...

  3. 如何使用seajs+jQuery构建中型项目

    为何有这种想法? 由于最近做的项目是用jquery+seajs集成的,所以就突发奇想 如何使用seajs+jquery能更好的构建项目,比如能解决模块化,模块与模块之间的依赖,文件上线后打包,压缩等能 ...

  4. python django -7 Git与项目

    git的使用,主要包括: 本地仓库的命令 远程仓库的命令 项目需求.页面.模型类的设计,及页面的使用 Git简介 Git是目前世界上最先进的分布式版本控制系统 安装 sudo apt-get inst ...

  5. python django 重新安装不能创建项目

    这里仅给大家做个思路提醒: 1.如果在别的地方找到一样的问题那就按别的方法去解决 2.如果是创建startproject的时候 报错:no module named 'mysite'  这个的话就和 ...

  6. Django-Multitenant,分布式多租户数据库项目实战(Python/Django+Postgres+Citus)

    Python/Django 支持分布式多租户数据库,如 Postgres+Citus. 通过将租户上下文添加到您的查询来实现轻松横向扩展,使数据库(例如 Citus)能够有效地将查询路由到正确的数据库 ...

  7. Python Django CMDB项目实战之-3创建form表单,并在前端页面上展示

    基于之前的项目代码 Python Django CMDB项目实战之-1如何开启一个Django-并设置base页.index页.文章页面 Python Django CMDB项目实战之-2创建APP. ...

  8. Python Django CMDB项目实战之-2创建APP、建模(models.py)、数据库同步、高级URL、前端页面展示数据库中数据

    基于之前的项目代码来编写 Python Django CMDB项目实战之-1如何开启一个Django-并设置base页index页文章页面 现在我们修改一个文章列表是从数据库中获取数据, 下面我们就需 ...

  9. Python Django CMDB项目实战之-1如何开启一个Django-并设置base页、index页、文章页面

    1.环境 win10 python 2.7.14 django 1.8.2 需要用到的依赖包:MySQLdb(数据库的接口包).PIL/pillow(处理图片的包) 安装命令: pip install ...

随机推荐

  1. python实现某目录下将多个文件夹内的文件复制到一个文件夹中

    现实生活中,我们经常有这样的需求,如下图,有三个文件夹,文件夹1内含有1.txt文件 文件夹2中内含有2.txt文件,文件夹3中含有3.txt文件.我们有时候需要把1.txt, 2.txt, 3.tx ...

  2. Spring入门(三):通过JavaConfig装配bean

    上一篇博客中,我们讲解了使用组件扫描和自动装配实现自动化装配bean,这也是最好的使用方式. 但是某些场景下,我们可能无法使用自动装配的功能,此时就不得不显式的配置bean. 比如我们引用了一个第三方 ...

  3. Error fetching https://gems.ruby-china.org/: bad response Not Found 404 (https://gems.ruby-china.org/specs.4.8.gz) 报错解决办法

    执行换源操作 gem source -a https://gems.ruby-china.org/ 时报错: Error fetching https://gems.ruby-china.org/: ...

  4. 程序员50题(JS版本)(九)

    程序41:八进制转换为十进制 var num1=425; var num2=0; num1=num1.toString(); for(var i=num1.length-1,root=1;i>= ...

  5. Dotspatial 空间要素选择

    //通过遍历选择要素,获取选择要素相交的要素 private void toolStripButton43_Click(object sender, EventArgs e) { //查看与选中要素重 ...

  6. 小米平板6.0系统如何无ROOT激活xposed框架的步骤

    在较多企业的引流,或业务操作中,基本上都需要使用安卓的黑高科技术Xposed框架,近期,我们企业购买了一批新的小米平板6.0系统,基本上都都是基于7.0以上系统,基本上都不能够获得ROOT的su权限, ...

  7. lambda 怎么传递ref参数

    lambda 传递ref参数有个语法bug,必须要显式书写参数类型. //如 delegate bool FuncType(ref int num); FuncType func1; func1 = ...

  8. Oracle Sql 胡乱记

    /Oracle查询优化改写/ --1.coalesce 返回多个值中,第一个不为空的值 select coalesce('', '', 's') from dual; --2.order by --- ...

  9. 使用py2exe将python脚本转换成exe可执行文件

    Python(wiki en  chs)是一门弱类型解释型脚本语言,拥有动态类型系统和垃圾回收功能,支持多种编程范式:面向对象.命令式.函数式和过程式编程. 由于Python拥有一个巨大而广泛的标准库 ...

  10. Kafka单节点及集群配置安装

    一.单节点 1.上传Kafka安装包到Linux系统[当前为Centos7]. 2.解压,配置conf/server.property. 2.1配置broker.id 2.2配置log.dirs 2. ...