Django丨创建项目

    技术2024-07-21  80

    创建项目


    版本:

    Python:3.7.4Django:3.0.6

    创建项目

    使用django-admin.py来创建HelloWorld项目:

    django-admin startproject HelloWorld

    项目目录结构

    $ cd HelloWorld/ $ tree . |-- HelloWorld | |-- __init__.py | |-- asgi.py | |-- settings.py | |-- urls.py | `-- wsgi.py `-- manage.py

    目录说明:

    HelloWorld:项目的容器manage.py:一个使用的命令工具,可以以各种方式与该Django项目进行交互。HelloWorld/_init_.py:一个空文件,告诉Python该目录是一个Python包。HelloWorld/settings.py:该Django项目的设置/配置。HelloWorld/urls.py:该Django项目的URL声明,一份由Django驱动的网站“目录”。HellowWorld/wsgi.py:一个WSGI兼容的Web服务器的入口,以便运行项目。

    启动服务器

    python manage.py runserver 0.0.0.0:8000

    0.0.0.0 让其他电脑可连接到开发服务器,8000为端口号。

    如果不说明,默认为8000。

    本机登录127.0.0.1:8000,正常启动

    视图和URL配置

    在HelloWorld目录先新键views.py文件

    # HelloWorld/HelloWorld/views/py from django.http import HttpResponse def hello(request): return HttpResponse('Hello world')

    绑定URL与视图函数。打开urls.py文件

    # HelloWorld/HelloWorld/urls.py from . import views urlpatterns = [ url(r'^$', views.hello), ]

    目录结构

    $ tree . |-- HelloWorld | |-- __init__.py | |-- __init__.pyc | |-- settings.py | |-- settings.pyc | |-- urls.py # url 配置 | |-- urls.pyc | |-- views.py # 添加的视图文件 | |-- views.pyc # 编译后的视图文件 | |-- wsgi.py | `-- wsgi.pyc `-- manage.py

    urls也可以写成如下规则

    # HelloWorld/HelloWorld/urls.py from django.urls import path from . import views urlpatterns = [ path('hello/', views.hello), ]

    注:项目中如果代码有改动,服务器会自动检测代码的改动并自动重新载入。

    path()函数

    Django path()可以接受四个参数,分别是两个必选参数:route、view和两个可选参数:kwargs、name。

    path(route, view, kwargs=None, name=None) route:字符串,表示URL规则,与之匹配的URL会执行对应的第二个参数view。view:用于执行与正则表达式匹配的URL请求kwargs:试图使用的字典类型的参数name:用来反向获取URL

    Django2.0 中可以使用re_path()方法来兼容1.x版本中的url()方法,一些正则表达式的规则也可以通过re_path()来实现

    from django.urls import include, re_path urlpatterns = [ re_path(r'^index/$', views.index, name='index'), re_path(r'^bio/(?P<username>\w+)/$', views.bio, name='bio'), re_path(r'^weblog/', include('blog.urls')), ... ]
    Processed: 0.015, SQL: 9