创建一个规范的django项目
1. 创建项目
2. 创建static目录及配置
1.创建放css, javascript,img的目录
2.在settings.py中将static绝对路径保存到变量STATICFILES_DIRS中。
3. 创建app及配置
3.1 我们希望尽量将各个模块分开,来给程序解耦,降低开发、维护和版本迭代的难度。所以创建多个APP
3.2 但是对于复杂的工程来说,每一个app会有很多表单、功能和url,所以我们将原本在app下的views文件删除,添加上forms和views两个目录,来存放不同的form和view文件
4. 连接mysql数据库
5. 遇到的问题
5.1 RemovedInDjango110Warning
1. 创建项目:
python django-admin.py startproject mysite
2. 创建static目录及配置
1. mkdir -p static/css static/js static/img
2.在mysite/mysite/settings.py最后加 STATICFILES_DIRS=(os.path.join(BASE_DIR, 'static'),)
3. 创建app及配置
3.1.1 创建两个模块,一个是用户模块,一个是资源模块。
./manage.py startapp hostManage
./manage.py startapp userManage
3.1.2 将模块添加到settings.py中
在INSTALLED_APPS中添加

3.2.1
1)rm -f userManage/views.py hostManage/views.py
2)mkdir hostManage/forms hostManage/views userManage/forms userManage/views
3)在app中创建urls文件,然后在原始urls文件中配置映射,来进行url的解耦
1.在主urls.py(mysite/urls.py)添加21、22行(格式各个版本有所不同,注意参考注释部分给的例子)

2.touch hostManage/urls.py userManage/urls.py
urls.py内容如下图:( 同样要参考主目录下的urls.py注释的部分)。

3.具体视图的内容(这里只简单的打印一行字)
touch hostManage/views/view1.py hostManage/views/__init__.py
touch userManage/views/view1.py userManage/views/__init__.py
view1.py内容如下图:

效果:
./manage.py runserver

4. 数据库操作
1)数据库准备
1.1 登陆: mysql -u root -p
1.2 新建Django数据库: CREATEDATABASE Django;
1.3 添加用户: CREATE USER 'agu'@'localhost' indentified by 'agu';
1.4 给用户agu操作数据库Django的权限: GRANT ALL ON Django.* to 'agu'@'localhost';
1.5 退出: exit;
2)修改settings.py中的DATABASES

3)同步到数据库
python manage.py makemigrations
python manage.py migrate
#注(Django1.71版本以下用: django python manage.py syncdb)
5
5.1 RemovedInDjango110Warning
解决方法:修改urls.py:
在django1.9里,urls的配置不再支持字符串型的路由。需要先import,然后直接引用。更加清晰。
比如:
urlpatterns = patterns('',
url(r'^test/', 'httpServer.views.hello.test'), # 注意,字符串形式
)
改为:
from httpServer.views import hello
# urlpatterns改为list了
urlpatterns = [
url(r'^test/', hello.test), # 直接引用
]
附注:可以用1.9的版本,新生成一个项目,看urls文件。
创建一个规范的django项目的更多相关文章
- 创建一个简单的Django项目
1.首先,启动pycharm,点击File->New Project,如下图所示. 2.在New Project对话框中,选择Django,在Location中设置项目路径以及项目名称,在App ...
- 规范化创建一个vs2017 Mvc框架项目
vs2107 + dapper + MiniUi 标准化分层封装使 3.1 规范化创建一个vs2017 Mvc框架项目 此时创建的项目勾选 添加单元测试. 添加一个类库,主要用于实体类操作,类库名称 ...
- Django入门第一步:构建一个简单的Django项目
Django入门第一步:构建一个简单的Django项目 1.简介 Django是一个功能完备的Python Web框架,可用于构建复杂的Web应用程序.在本文中,将通过示例跳入并学习Django.您将 ...
- 通过beego快速创建一个Restful风格API项目及API文档自动化
通过beego快速创建一个Restful风格API项目及API文档自动化 本文演示如何快速(一分钟内,不写一行代码)的根据数据库及表创建一个Restful风格的API项目,及提供便于在线测试API的界 ...
- 以sb7code为基础创建一个基本的OpenGL项目
以sb7code为基础创建一个基本的OpenGL项目 从github上面下载sb7code代码: https://github.com/openglsuperbible/sb7code 打开H ...
- 通过beego快速创建一个Restful风格API项目及API文档自动化(转)
通过beego快速创建一个Restful风格API项目及API文档自动化 本文演示如何快速(一分钟内,不写一行代码)的根据数据库及表创建一个Restful风格的API项目,及提供便于在线测试API的界 ...
- 简单创建一个SpringCloud2021.0.3项目(四)
目录 1. 项目说明 1. 版本 2. 用到组件 3. 功能 2. 上三篇教程 3. 日志处理 1. 创建日志公共模块 2. Eureka引入日志模块 4. 到此的功能代码 5. 注册中心换成naco ...
- 简单创建一个SpringCloud2021.0.3项目(三)
目录 1. 项目说明 1. 版本 2. 用到组件 3. 功能 2. 上俩篇教程 3. Gateway集成sentinel,网关层做熔断降级 1. 超时熔断降级 2. 异常熔断 3. 集成sentine ...
- 简单创建一个SpringCloud2021.0.3项目(二)
目录 1. 项目说明 1. 版本 2. 用到组件 3. 功能 2. 上一篇教程 3. 创建公共模块Common 4. 网关Gateway 1. 创建Security 2. Security登陆配置 3 ...
随机推荐
- Electron 发生错误 "Cannot find module app"的解决方案
运行一个electron小demo出现的一个错误信息:Cannot find module app 原代码如下所示: var app = require('app'); var BrowserWind ...
- 可长点心吧-sort
sort #<algorithm> 用的时候一定是 从 第一个(你想要排序的范围内的) 到 最后一个+1 真的错了不止一次了 真的长点心吧
- 深入浅出的webpack构建工具---ParallelUglifyPlugin优化压缩(十)
webpack默认提供了UglifyJS插件来压缩JS代码,但是它使用的是单线程压缩代码,也就是说多个js文件需要被压缩,它需要一个个文件进行压缩.所以说在正式环境打包压缩代码速度非常慢(因为压缩JS ...
- Java中关于类型自动提升的两个注意点。
问题一:在进行赋值运算时,进行类型提升: 例如:short s1 = 1;s1 = s1 + 1; (错的编译通不过) short s2 = 1;s2 += 1;(正确,编译和运行都能通过) 为什么呢 ...
- SkylineGlobe 移动端开发测试
基于SkylineGlobe提供的安卓版本SDK,在已有菜单中增加自定义内容,测试代码如下: 新增加文件ZhaoHeContainer.java package com.skyline.terraex ...
- (转)对一个deb包的解压、修改、重新打包全过程方法
转自:https://blog.csdn.net/yygydjkthh/article/details/36695243 Reference: http://www.debian.org/doc/ma ...
- SQL SERVER中DBLINK的实现
exec sp_addlinkedserver 'CantennFlexPsApp' , '' , 'SQLOLEDB' , '目标数据库的IP' exec sp_addlinkedsrvlogin ...
- Linux查看特定端口是否被占用并kill掉相关进程
今天在搭建Zookeeper集群的时候,需要频繁启动zookeeper,但是启动的时候,有时会提示下列错误信息: zookeeper需要的地址已经被占用了,其实是因为上一次的zookeeper没有关闭 ...
- linux的convert图片处理工具
得到一个图片的尺寸, identify test.png 结果为: test.png PNG 178x15 178x15+0+0 16-bit PseudoClass 65536c 2.28kb 使用 ...
- POJ Remmarguts' Date
题目链接-> 题解: 次短路模板. 代码: #include<cstdio> #include<iostream> using namespace std; #defin ...