Django学习(一)---基本配置及创建项目、应用


安装:在Django官网下载最新版Django然后通过pip安装即可

一、创建项目

进入文件夹,打开cmd窗口,输入django-admin startproject myblog(项目名)

二、创建应用

1.打开命令行,进入项目中manage.py同级目录

2.命令行输入:python manage.py startapp blog(应用名)

3.添加应用名到settings.py中的INSTALLED_APPS里

三、新建视图

 编辑应用blog目录下的views.py文件如下:

from django.shortcuts import render

# Create your views here.
from django.http import HttpResponse # 引入HttpResponse,用来向网页返回内容

def index(request):                  # 定义的函数第一个参数必须是request,resquest变量里包含了get和post方式
    return HttpResponse(u'Hello World')

函数返回了一个 HttpResponse 对象,可以经过一些处理,最终显示"Hello World"到网页上。

注意:每个请求对应一个函数,函数必须返回一个响应

          函数必须存在一个参数,一般约定为request

          每个相应(函数)对应一个URL

四、为页面配置URL路由

编辑项目myblog目录下的urls.py文件如下:

from django.conf.urls import url
from django.contrib import admin
from blog import views as Hello_views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^blog/$',Hello_views.index)
]

注意:每个URL都以url的形式写出来

           url函数存放在urlpatterns列表中

           url函数有3个参数:URL(正则),对应方法,名称(可省略)

启动:通过命令行进入项目myblog同级目录,输入python manage.py runserver启动,打开浏览器输入url即可,默认为 http://127.0.0.1:8000/index 

 五、

1.创建完项目后的目录结构为:

myblog  
├── manage.py  
└── myblog  
    ├── __init__.py  
    ├── settings.py  
    ├── urls.py  
    └── wsgi.py  

新建了一个 myblog 目录后,其中还有一个 myblog 目录,这个子目录 myblog 中是一些项目的设置settings.py 文件,总的urls配置文件urls.py 以及部署服务器时用到的 wsgi.py 文件,__init__.py是python包的目录结构必须的,与调用有关。

2.创建应用app后的目录结构为:

blog/  
├── __init__.py  
├── admin.py  
├── models.py  
├── tests.py  
└── views.py  

3.Django中几个项目文件的作用:

 1)urls.py

网址入口,关联到对应的views.py中的一个函数(或者generic类),访问网址就对应一个函数。

2) models.py

数据模块,使用ORM模块,与数据库操作相关,存入或读取数据时用到这个,用不到数据库时可以不使用。

3)forms.py

表单,用户在浏览器上输入数据提交,对数据的验证工作以及输入框的生成等工作,也可以不使用。

4) templates 文件夹

views.py 中的函数渲染templates中的Html模板,得到动态内容的网页,可以用缓存来提高速度。

5) admin.py

后台,可以用很少量的代码就拥有一个强大的后台。

6) settings.py

Django 的设置,配置文件,比如 DEBUG 的开关,静态文件的位置等。

7) migrations

数据移植(迁移)模块

8)apps.py

该应用的一些配置,自动生成的

9) test.py

自动化测试模块,Django提供自动化测试的功能,在这里编写测试语句

10) views.py

执行响应的代码所在模块,代码逻辑处理的主要地点,项目中大多数代码写在这里

六、第二种URL配置方法

当项目比较庞大时,如果所有的url都在根urls.py中配置的话,会比较繁杂,出现命名冲突等问题,不利于维护,

因此可以在每个app中单独配置url。

1.

在项目根目录下的 urls.py中引入include

url方法中加入include(‘blog.urls’)

from django.conf.urls import url, include
from django.contrib import admin

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'', include('blog.urls')),
]

2.在app目录下创建urls.py文件  格式和根urls.py相同

import blog.views 文件

url方法加入views.index函数

from django.conf.urls import url
from blog import views as Hello_views

urlpatterns = [
    url(r'^index/$', Hello_views.index),
]

注意:

根urls.py针对app配置的URL名称,是该app所有URL的总路径(如:上面的路径为http://127.0.0.1:8000/index/)

即匹配的路径为根urls.py中的正则加上app下urls.py中的正则

配置URL注意正则表达式结尾符号$和/

原文地址:https://www.cnblogs.com/Lovebugs/p/7155264.html