zoukankan      html  css  js  c++  java
  • 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注意正则表达式结尾符号$和/

  • 相关阅读:
    Debian 添加Apache2
    最全面试资源,题库
    vue中的坑
    javascript事件相关4
    javascript事件相关3
    javascript事件相关2
    javascript事件学习笔记
    javascript 点点滴滴 jquery
    javascript 点点滴滴 jquery
    三栏自适应布局解决方案
  • 原文地址:https://www.cnblogs.com/Lovebugs/p/7155264.html
Copyright © 2011-2022 走看看