Django学习1

2017-09-11  本文已影响0人  shaopson

查看Django版本

$ python -m django --version

创建项目

$ django-admin startproject mysite

项目目录:

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        wsgi.py

开启Django开发服务器

$ python manage.py runserver [ip] [port]

默认参数 ip: 127.0.0 port: 8000

在你修改Django项目代码后,该开发服务器一般会自动加载,不需要重新启动来使代码生效,但是,有些操作(如添加文件)需要手动重启开发服务器

创建应用

$ pythin manage.py startapp appname

这将创建appname应用,及目录appname/

appname/
    __init__.py
    admin.py
    apps.py
    models.py
    tests.py
    views.py
    migrations/
        __init__.py

编写视图

编辑appname/views.py

from django.http import HttpResponse

def index(request):
    return HttpResponse("hello,world")

一个函数就是一个视图。要调用视图函数,需要将视图映射到一个url。
在当前应用appname/下新建一个urls.py文件,写入:

from django.cong.urls import url
from . import views

urlpatterns = [
    url(r'^$',views.index,name='index'),
]

将项目的mysite/urls.py文件包含应用的appname/urls.py文件。编辑项目的urls.py文件:

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

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

include()函数可以引用其他地方的URL模块

include()函数的正则表达式不具有$(结束符串匹配字符),而是尾部斜线/。每当Django遇到时include(),它会将与该点匹配的任何部分删除,并将剩余的字符串发送到包含的URL模块进行进一步处理。
正则表达式不搜索GET,POST的参数或域名。
正则表达式在第一次加载url模块时被编译。

url()有四个参数,2个必须:regex view;2个可选:kwargs name

上一篇 下一篇

猜你喜欢

热点阅读