template-for-django
Python
Python
共36个文件
py: 29
json: 2
gitignore: 1
LICENSE: 1
md: 1
txt: 1
xml: 1
基于Django的服务端开发模板
基于Django的服务端开发模板
介绍
工程为Django模板,包含一个基础的用户系统及其相关接口与管理平台,同时在本地启动后,每次修改文件支持自动热重启,同时在部署到服务器后,uwsgi也支持自动热重启,这也就意味着,当你使用一些工具,例如sublimetext的sftp工具将文件直接同步至服务器时,服务器将自动热重启,重新访问接口将看到修改后的效果,该功能可在uwsgi的配置文件中关闭。开发者若打算直接使用本工程进行开发,在修改工程名称时,需要修改多个地方,建议对Django大致有一定了解后再去修改,也可以采用自己创建工程后创建应用,然后再拷贝此项目的相关文件夹对其进行替换的方式。
数据库相关
工程使用的是MySQL数据库,请确保在开发前正确安装了Mysql数据库,否则请自行修改settings.py文件中的数据库配置信息,工程settings.py中包含两个版本数据库配置信息,在Debug模式启动时调用本地数据库配置,Debug模式关闭时调用服务端数据配置,主要针对本地与服务端部署时数据库配置不同的情况,所以在你将工程部署到服务端时,请将Debug模式关闭掉,数据库配置信息不正确将造成工程启动不正常的情况,当然,你也可以在服务端本地创建一个数据库用来调试用。
相关信息
由于Python包含多个版本,不同工程有可能使用到不同的Python版本进行开发,而且不同工程所需要的依赖库也不同,因而我们用到virtualenv进行Python的虚拟环境管理,具体信息请查阅virtualenv相关文档,同时,使用virtualenv进行虚拟环境的启动及切换相对繁琐,所以我们又用到了virtualenvwrapper来进行虚拟环境的管理切换等工作,具体信息请查阅virtualenvwrapper相关文档。
注意
工程下包含一个sftp-config.json的文件,该文件为sublimetext安装sftp插件后将工程文件上传到服务器所用到的配置文件,一般不上传至服务器,所以在你的工程中,请把它添加到.gitignore中,若你使用的方式为git推送后自动部署,请忽略此文件。
配置开发环境
安装virtualenv及virtualenvwrapper
pip install virutalenv virtualenvwrapper
配置virtualenvwrapper
# 例如MacOSX下这样配置,第一个为虚拟环境存放目录,第二个为virtualenvwrapper的脚本所在目录
export WORKON_HOME=~/Workspace/python/.venv
source /usr/local/bin/virtualenvwrapper.sh
使用Python3.6创建一个虚拟环境
mkvirtualenv dj -p python3.6
切换到创建好的虚拟环境
# 单独执行workon命令可查看当前有哪些虚拟环境
workon dj
安装依赖库
pip install -r requirements.txt
配置工程
若您修改了工程名称,请确保uwsgi目录下的xml文件名与工程名字一样,这样uwsgi的配置文件才能自动配置成功
获取管理平台静态文件
python manage.py collectstatic
创建数据库
# 使用root用户登录数据库
mysql -uroot -p
# 创建数据库django
mysql> CREATE DATABASE IF NOT EXISTS `django` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
# 查看创建出来的数据库
mysql> show databases;
新增用户django,密码设置为123456, 并设置其对django数据库拥有所有权限
mysql> grant all on django.* to django@"localhost" Identified by "123456";
# 退出数据库
mysql> exit
数据库用户密码修改方式
# 方法一
mysqladmin -u root password oldpass "newpass"
# 方法二
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
使用django用户登录数据库
mysql -udjango -p django
# 执行后应该显示为空
mysql> show tables;
创建表映射
python manage.py makemigrations mauth
生成删除数据库中所有表的命令,出错时重新操作,而不用整个删除数据库重新创建和分配权限
mysql> SELECT CONCAT('drop table ',table_name,';') FROM information_schema.`TABLES` WHERE table_schema='django';
将表映射实现到数据库中
python manage.py migrate
# 登录数据库
mysql -udjango -p django
# 此时应该显示出了创建好的表
mysql> show tables;
为Django管理平台创建管理用户
# 用户名:admin 密码:test123456
python manage.py createsuperuser
访问管理后台网址:http://127.0.0.1:8000/admin/ 输入刚才创建的用户名密码登录
测试接口
注册
# 注册两个用户
curl -d "username=User01&password=1234567" http://127.0.0.1:8000/auth/register/
curl -d "username=User02&password=123456" http://127.0.0.1:8000/auth/register/
登录
# 获取到的token_text用于后续接口的token字段
curl -d "username=User01&password=1234567" http://127.0.0.1:8000/auth/login/
修改密码
curl -X PUT -d "old_password=1234567&new_password=123456" http://127.0.0.1:8000/auth/password/?token=804920f0b7fb11e8a28538c986110fcb
获取用户信息
curl http://127.0.0.1:8000/auth/userinfo/?token=804920f0b7fb11e8a28538c986110fcb
修改用户信息
curl -X PUT -d "age=10" http://127.0.0.1:8000/auth/userinfo/?token=804920f0b7fb11e8a28538c986110fcb
搜索用户
curl http://127.0.0.1:8000/auth/search/?q=User01
工具类
工程提供了一个工具类rzutils,包含如下功能(相关平台信息配置均在config.py文件中)
正则表达式验证
权限验证
错误类型
Http响应封装
装饰器
数据库模板通用方法
通用视图
字符串处理
时间处理
基于LBS的地理位置距离计算
基于IP地址获取位置信息
发送短信
发送邮件
阿里云存储
微信支付
微信授权获取信息
高通AR目标管理
https://gitee.com/zhengxiangqi/template-for-django
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
项目概述:高效Django服务端开发模板 本项目采用Python语言开发,提供了一套完善的Django服务端模板,旨在提高开发效率。模板包含36个文件,具体构成如下: - Python源文件(.py):29个,涵盖了Django项目的核心功能与业务逻辑。 - 配置文件(.json):2个,用于存储项目配置及数据结构。 - Git忽略配置(.gitignore):1个,定义了Git版本控制时需要忽略的文件和目录。 - 许可证文件(LICENSE):1个,明确了项目的版权信息和使用许可。 - Markdown文件(.md):1个,提供了项目的说明文档。 - 文本文件(.txt):1个,包含项目相关的文本信息。 - 配置文件(.xml):1个,用于存储特定格式的配置信息。 本模板适用于快速启动基于Django框架的服务端项目,为开发者提供了一个稳固且灵活的起点。
资源推荐
资源详情
资源评论
收起资源包目录
upload.zip (38个子文件)
rzutils
__init__.py 0B
wxpay.py 4KB
regex.py 1KB
response.py 1KB
wxweb.py 2KB
emoji.json 22KB
gpsdistance.py 2KB
permissions.py 1KB
decorator.py 922B
models.py 345B
time.py 2KB
oss2.py 4KB
cocsms.py 1KB
vuforia.py 15KB
string.py 2KB
error.py 2KB
views.py 2KB
email.py 1KB
config.py 1KB
iplocation.py 3KB
LICENSE 1KB
uwsgi
TemplateForDjango.xml 512B
manage.py 549B
TemplateForDjango
__init__.py 0B
wsgi.py 411B
urls.py 833B
settings.py 4KB
sftp-config.json 1KB
requirements.txt 663B
.gitignore 218B
readme.txt 6KB
mauth
__init__.py 207B
tests.py 264B
admin.py 1KB
apps.py 322B
models.py 3KB
urls.py 646B
views.py 5KB
共 38 条
- 1
资源评论
沐知全栈开发
- 粉丝: 4743
- 资源: 3374
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功