1. python -m django --version

查看版本 1.11.4

在需要创建项目的目录下执行:

2. django-admin startproject myblog => 创建名为myblog的项目

在项目的manage.py 同级目录下运行

3. python manage.py runserver 9999 =>以端口号9999打开server,通过浏览器127.0.0.1:9999访问(默认8000端口)

项目myblog目录分析:

myblog------wsgi.py => python服务器网关接口,与web服务器通信的关键,平时不会改动

    -----urls.py 每个页面的配置,或每个应用的根路径配置

    -----setting.py 非常重要,核心部分,很多内容要在其中改动

    -----__init__.py 有这个文件,myblog可以作为引用的模块    

setting.py文件结构分析

BASE_DIR  项目根目录
SECRET_KEY 创建项目时自动生成的 可无视
DEBUG 不要在生产环境打开
ALLOWED_HOSTS 如果将debug 改为false,将allow_hosts改为localhost,那么通过ip访问就报错
INSTALLED_APPS 在该项目下创建的任何应用,都要把名字加入这个列表中   比如4. 创建的blog 需要将名字加入
ROOT_URLCONF ='myblog.urls'  貌似自动生成的吧
TEMPLATES 模板配置 htmlm文件,
      使用了django模板语言 Django Template Language DTL
      叫模板引擎
      在第一行:'BACKEND': 'django.template.backends.django.DjangoTemplates'
      也可以使用第三方引擎 Jinja2

WSGI_APPLICATION 无视 与网关配置相关的
DATABASES 默认使用DB为db.sqlite3
STATIC_URL 静态文件  html css等

在项目的manage.py 同级目录下运行

4. python manage.py startapp blog => 创建一个名为blog的应用

项目myblog下的应用:blog结构分析:

blog ------migrations => 数据迁徙 django自动生成

   ------admin => 当前应用的后台管理系统配置

   ------ apps => 当前应用的配置

       ------ models => 数据表

       ------ tests => 自动化测试模块

       ------ views =>执行响应的逻辑代码,项目中大部分代码在此

      每个函数接收一个响应参数,再返回一个响应参数

      每个函数对应一个url

      去 myblog的urls.py 中添加函数同名对应的url,

      然后 python manage.py runserver 就可以在浏览器中访问刚才配置的url,可以看到view的函数返回内容了

5. 在setting.py 文件中加入到 install_apps列表中

6. 在app:blog的根目录下创建文件夹:templates

7. 在myblog/blog/templates下创建html文件:index.html

8. 在app:blog 的 view.py 中 添加函数index2, return render(request, 'index.html', 后台数据)

    其中,render:渲染页面

       request, 接收的响应参数

index.html 为html文件字符串

后台数据:支持dict类型参数,key在前端(html中,用双大括号{{}},不显示在终端页面),value是后台内容,最终显示在终端页面的

8.1  在项目myblog 的 urls.py 中,引入了include,可以引用app blog 和 blog2 的urls, 

url(r'^blog/', include('blog.urls')),
url(r'^blog2/', include('blog2.urls')),

8.2 app blog 和 blog2 的urls.py 里面的函数路径可以为空,用正则匹配, 注意最后的斜杠写法,为空写成^$

url(r'^index/$', views.index),
url(r'^myblog/$', views.myblog),

9 添加新的应用app:blog2  其下也有index.html ,setting中添加好应用名字,urls中配置好路径,

发现  只能顺序找到第一个blog的templates/index.html,

即 : 不同app的templates 目录下同名html文件会造成冲突

解决办法: 在templates文件夹下,创建应用名字相同的文件夹

       并在应用app 的 views.py文件的相关函数,第二个参数html文件字符串前加上app名字目录

 

def index(request):
return render(request,'blog/index.html',{'hello':'开花花

django-1创建项目创建app设置setting、urls、templates、views等的更多相关文章

  1. Django创建项目及app

    主要环境为python3.5,编译环境为pycharm 首先已经安装好Django相关的组件 1.首先创建Django程序: windows系统下pycharm创建步骤: File->New P ...

  2. django1.9 创建项目和app并初始化项目

    创建项目: django-admin startproject  mytest04 创建app: python manage.py startapp app04 配置:settings.py 1. 2 ...

  3. thinkphp3.2笔记(5)创建项目 创建模型 实例化

    一 创建项目 1 拷贝框架 目录   public   thinkphp  .htaccess  index.php    [application不用拷贝,会自动生成] 2   public 下面创 ...

  4. django rest framework 项目创建

    Django Rest Framework 是一个强大且灵活的工具包,用以构建Web API 为什么要使用Rest Framework Django REST Framework可以在Django的基 ...

  5. Web框架之Django_01初识(三大主流web框架、Django安装、Django项目创建方式及其相关配置、Django基础三件套:HttpResponse、render、redirect)

    摘要: Web框架概述 Django简介 Django项目创建 Django基础必备三件套(HttpResponse.render.redirect) 一.Web框架概述: Python三大主流Web ...

  6. VUE创建项目

    Vue Cli项目搭建     vue项目需要自建服务器:node 什么是node: 用C++语言编写,用来运行JavaScript语言 node可以为前端项目提供server (包含了socket) ...

  7. djiango 虚拟环境与项目创建

    建立虚拟环境 一,查看有那些虚拟环境 :workon 二,创建虚拟环境:mkvirtualenv -p/usr/bin/python3 django(p后面是路径) 三,进入虚拟环境:workon d ...

  8. Vue学习笔记-nodejs+vue-cli4+webpack按装配置+项目创建

    一  使用环境: windows 7 64位操作系统 二  Vue学习-nodejs按装配置,Node.js 就是运行在服务端的 JavaScript. 1. 去nodejs的官网下载  https: ...

  9. vue(16)vue-cli创建项目以及项目结构解析

    vue-cli创建项目 上一篇我们安装了vue-cli,接下来我们就使用该脚手架进行创建项目 1.进入一个目录,创建项目 创建项目命令如下: vue create <Project Name&g ...

随机推荐

  1. bzoj 4071: [Apio2015]巴邻旁之桥【splay】

    用权值线段树会容易一些并快一些,但是想复健一下splay所以打了splay 然后果然不会打了. 解题思路: 首先把家和办公室在同一侧的提出来直接加进答案里: 对于k=1,直接选所有办公室和家的中位数即 ...

  2. P2093 [国家集训队]JZPFAR(KDTree)

    传送门 类似于p4357 不过因为距离相等的时候要优先选择序号小的,所以要重载一下运算符 //minamoto #include<bits/stdc++.h> #define R regi ...

  3. [Swift通天遁地]一、超级工具-(4)使用UIWebView(网页视图)加载HTML和Gif动画

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  4. [Usaco2005 Feb]Feed Accounting 饲料计算

    Description Farmer John is trying to figure out when his last shipment of feed arrived. Starting wit ...

  5. 背包DP HDOJ 5410 CRB and His Birthday

    题目传送门 题意:有n个商店,有m金钱,一个商店买x件商品需要x*w[i]的金钱,得到a[i] * x + b[i]件商品(x > 0),问最多能买到多少件商品 01背包+完全背包:首先x == ...

  6. 题解报告:hdu 1124 Factorial(求N!尾数有多少个0。)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1124 Problem Description The most important part of a ...

  7. 首先定义一个5X8的二维数组,然后使用随机数填充满。借助Arrays的方法对二维数组进行排序。

    package day02; import java.util.Arrays; import java.util.Random; public class Test01 { public static ...

  8. logging模块基础3

    1.logging模块的日志级别 CRITICAL = 50 #FATAL = CRITICAL ERROR = 40 WARNING = 30 #WARN = WARNING INFO = 20 D ...

  9. Spark学习之基于MLlib的机器学习

    Spark学习之基于MLlib的机器学习 1. 机器学习算法尝试根据训练数据(training data)使得表示算法行为的数学目标最大化,并以此来进行预测或作出决定. 2. MLlib完成文本分类任 ...

  10. esp8266 串口通讯

    1.发送 调用uart_init(115200,115200);初始化串口,波特率设置为115200.前面一个是设置uart0的波特率.后面一个是设置.uart的波特率 然后就可以使用uart0_tx ...