[Django] Django(二) 创建第一个Django项目

1.创建项目

当搭建好Django的环境后,开始创建第一个Django项目。
创建一个项目,只需要执行如下命令:

$ django-admin startproject HelloDjango

这时在当前目录下会生成一个HelloDjango,这就是一个Django项目,该项目结构如下:

HelloDjango/
├── HelloDjango
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── manage.py

以上文件的作用分别如下:

  • 外部HelloDjango:该目录仅仅作为项目容器,可以自己修改名称;
  • 内部HelloDjango:该目录是项目的Python包,当需要导入项目中的某个模块时,需要使用该名字,因此不能随便修改;
  • manage.py:和Django交互的命令行工具,提供了多种命令用于管理Django项目,比如我们在创建项目时使用的命令;
  • __init__.py:对于每个python包,都会有一个默认的该文件;
  • settings.py:Django项目配置文件;
  • urls.py:url声明,配置url路径;
  • wsgi.py:对wsgi兼容的web服务器切入点.

除了这些自动生成的目录和文件外,还可以自己创建一些目录,用户存放指定文件:

  • templates:用于存放模板文件;
  • log:用于存放log日志;
  • static:用于存放静态资源

现在启动服务器,就可以访问该项目了,进入到外部HelloDjango中:

$ python manage.py runserver

打开浏览器,输入http:127.0.0.1:8000,界面如下,说明访问成功:
这里写图片描述
启动服务器时,端口号默认8000,如果指定端口号,可以使用如下命令:

$ python manage.py runserver 8080

现在,就可以在项目中创建应用了。

2.在项目中创建应用

Django中,首先需要搞清楚项目和应用的区别,应用是一个专门做某件事的网络应用程序,比如一个网站上的某个小模块就是一个应用。在 Django 中,每一个应用都是一个 Python 包,并且遵循着相同的约定。
项目则是一个网站使用的配置和应用的集合。项目可以包含很多个应用。应用可以被很多个项目使用。
知道这些基本概念后,现在创建一个应用,实现在浏览器输出“HelloDjango”的功能。和创建一个项目类似,创建一个应用也是通过manage.py提供的命令进行创建:

$ python manage.py startapp SimpleHello

现在在HelloDjango项目中创建了一个SimpleHello的应用,目录结构如下:

├── HelloDjango
│   ├── __init__.py
│   ├── __pycache__
│   │   ├── __init__.cpython-36.pyc
│   │   ├── settings.cpython-36.pyc
│   │   ├── urls.cpython-36.pyc
│   │   └── wsgi.cpython-36.pyc
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
├── manage.py
└── SimpleHello
    ├── admin.py
    ├── apps.py
    ├── __init__.py
    ├── migrations
    │   └── __init__.py
    ├── models.py
    ├── tests.py
    └── views.py

这些文件的作用如下:

当应用创建好后,必须在配置文件中进行配置,在HelloDjango.settings.py中:

INSTALLED_APPS = [
    'SimpleHello.apps.SimplehelloConfig',
    # ......
]

需要给应用提供一个视图,这样就可以在网页中显示了,在SimpleHello.views.py中,添加下列代码生成视图:

from django.http import HttpResponse

def index(request):
    return HttpResponse("Hello,Django....!")

视图生成之后,还需要提供一个url在浏览器中访问,首先在SimpleHello中创建一个urls.py文件,并添加如下代码:

from django.urls import path
from . import views
urlpatterns=[
    path('',views.index,name='index')
]

然后,在HelloDjango.urls.py中,配置一个url:

from django.urls import path,include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('SimpleHello/',include('SimpleHello.urls')),
]

现在启动服务器:

$ python manage.py runserver

在浏览器中输入:http://127.0.0.1:8000/SimpleHello, 此时界面如下:
这里写图片描述

在定义url时使用到了include()函数和path()函数,include()函数用于引用其他urlsConfig,path()函数则是定义url的关键,其第一个参数是一个匹配url的准则,可以是正则表达式,当 Django 响应一个请求时,它会从 urlpatterns 的第一项开始,按顺序依次匹配列表中的项,直到找到匹配的项;第二个参数表示一个视图,当找到匹配视图时,就会调用该视图指定的函数,并且传入一个HttpRequest对象。

总结

本篇文章主要总结归纳了如何创建一个项目和应用,主要是几个命令:

# 创建一个Django项目
$ django-admin startproject projectname
# 创建一个项目的应用
$ python manage.py startapp app1
# 启动服务器
$ python manage.py runserver

猜你喜欢

转载自blog.csdn.net/fightfightfight/article/details/79982802