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

  1. 创建一个简单的Django项目

    1.首先,启动pycharm,点击File->New Project,如下图所示. 2.在New Project对话框中,选择Django,在Location中设置项目路径以及项目名称,在App ...

  2. 规范化创建一个vs2017 Mvc框架项目

    vs2107 + dapper + MiniUi 标准化分层封装使 3.1 规范化创建一个vs2017 Mvc框架项目 此时创建的项目勾选 添加单元测试. 添加一个类库,主要用于实体类操作,类库名称 ...

  3. Django入门第一步:构建一个简单的Django项目

    Django入门第一步:构建一个简单的Django项目 1.简介 Django是一个功能完备的Python Web框架,可用于构建复杂的Web应用程序.在本文中,将通过示例跳入并学习Django.您将 ...

  4. 通过beego快速创建一个Restful风格API项目及API文档自动化

    通过beego快速创建一个Restful风格API项目及API文档自动化 本文演示如何快速(一分钟内,不写一行代码)的根据数据库及表创建一个Restful风格的API项目,及提供便于在线测试API的界 ...

  5. 以sb7code为基础创建一个基本的OpenGL项目

      以sb7code为基础创建一个基本的OpenGL项目   从github上面下载sb7code代码: https://github.com/openglsuperbible/sb7code 打开H ...

  6. 通过beego快速创建一个Restful风格API项目及API文档自动化(转)

    通过beego快速创建一个Restful风格API项目及API文档自动化 本文演示如何快速(一分钟内,不写一行代码)的根据数据库及表创建一个Restful风格的API项目,及提供便于在线测试API的界 ...

  7. 简单创建一个SpringCloud2021.0.3项目(四)

    目录 1. 项目说明 1. 版本 2. 用到组件 3. 功能 2. 上三篇教程 3. 日志处理 1. 创建日志公共模块 2. Eureka引入日志模块 4. 到此的功能代码 5. 注册中心换成naco ...

  8. 简单创建一个SpringCloud2021.0.3项目(三)

    目录 1. 项目说明 1. 版本 2. 用到组件 3. 功能 2. 上俩篇教程 3. Gateway集成sentinel,网关层做熔断降级 1. 超时熔断降级 2. 异常熔断 3. 集成sentine ...

  9. 简单创建一个SpringCloud2021.0.3项目(二)

    目录 1. 项目说明 1. 版本 2. 用到组件 3. 功能 2. 上一篇教程 3. 创建公共模块Common 4. 网关Gateway 1. 创建Security 2. Security登陆配置 3 ...

随机推荐

  1. CVE-2018-14634 - Linux create_elf_tables()中的整型溢出 - 翻译

    原文:https://seclists.org/oss-sec/2018/q3/274 摘要 Qualys研究实验室的安全团队发现一个位于Linux内核函数create_elf_tables()中的整 ...

  2. Linux命令——head/tail

    一.head head主要是用来显示档案的开头至标准输出中,默认打印相应文件的开头10 行. 1)命令格式 head [参数] [文件] 2)常用参数 -q     隐藏文件名-v     显示文件名 ...

  3. python:利用smtplib模块发送邮件

    自动化测试中,测试报告一般都需要发送给相关的人员,比较有效的一个方法是每次执行完测试用例后,将测试报告(HTML.截图.附件)通过邮件方式发送. 参考代码:send_mail.py 一.python对 ...

  4. 什么是Mixin模式:带实现的协议

    Mixin(织入)模式并不是GOF的<设计模式>归纳中的一种,但是在各种语言以及框架都会发现该模式(或者思想)的一些应用.简单来说,Mixin是带有全部实现或者部分实现的接口,其主要作用是 ...

  5. 系统引导修复,grub2下的各种骚作

    新买的xps装了一个rhel7.5,各种恶心... 第一次:升级内核之后居然引导不了! 进入bios setup,把bios 引导的文件选择为 grub64.eif,成功进入系统 第二次:升级grub ...

  6. myeclipse、maven、tomcat、jdk技巧和坑【待完善】

    公司使用前后不分离或半分离的springmvc + maven ,自己不得不研究研究myeclipse.maven.tomcat等等 开发环境搭建:坑一: Unable to process Jar ...

  7. 【下一代核心技术DevOps】:(四)私有镜像库阿里云Docker服务使用

    1.使用阿里云镜像库有很多优点 稳定可靠,阿里技术,放心使用. 国内cdn多节点加速,下载速度非常快 可以和阿里云Git代码集成,不需要第三方CI工具,当然带的自动构建服务也可以和其他的Git库集成, ...

  8. python爬虫xpath的语法

    有朋友问我正则,,okey,其实我的正则也不好,但是python下xpath是相对较简单的 简单了解一下xpath: XPath 是一门在 XML 文档中查找信息的语言.XPath 可用来在 XML ...

  9. 我的devops实践经验分享一二

    前言 随着系统越来越大,开发人员.站点.服务器越来越多,微服务化推进,......等等原因,实现自动化的devops越来越有必要. 当然,真实的原因是,在团队组建之初就预见到了这些问题,所以从一开始就 ...

  10. 用EXCLE群发outlook邮件

    Outlookでメール一括送信する方法(差し込み.HTML形式.添付ファイル複数あり) メールを一括送信する方法はウェブ上にいくつも紹介されていましたが.以下のすべての条件を満たすものが見つからなかっ ...