Django 官方文档write your first Django app --1

writing your first Django app,part 1

创建项目

略过安装过程,通过下面的命令行语句创建django项目,名称为mysite的文件夹。

note:需要避免项目名称和python或django内建对象重名

$ django-admin startproject mysite

让我们看看文件夹的框架:

mysite/
    manage.py
    mysite/
        __init__.py
        setting.py
        urls.py
        wsgi.py
  • manage.py: 一个命令行工具,让你能与django项目交互。更多manage.py细节在django-admin.
  • mysite/wsgi.py: 一个WSGI兼容服务器的入口。更多细节请看How to deploy with WSGI

接下来我们看项目是否能正常运行,进入文件夹然后输入以下命令:

$python manage.py runserver

修改端口

可以在runserver后面跟上以下代码来修改端口。

$python manage.py runserver 8080

如果你想修改服务器的ip,可以把它和端口放在一起,这样就能让其他机器访问了。(特别是在你想向其他机器炫耀你的杰作!)

python manage.py runserver 0.0.0.0:8000

更多关于服务器开发的文档请见runserver

创建app

Django提供了一个方便的工具用来生成基本的app目录结构,让你更专注于编写代码而不是创造目录。

app是指Web application可以实现一些功能,比如博客系统,一个简单的投票app。projects是指集合配置与app的特定的网站。一个project可以包含很多app,app也可以放在不同的project中使用.

确认你与manage.py处于同一个目录下,然后输入以下命令来创建一个app:

$python manage.py startapp polls

写你的首个view

打开polls/views.py文件,在里面写入下面的代码:

polls/views.py:

from django.http import HttpResponse


def index(request):
    return HttpResponse("Hello, world. You're at the polls index. ")

我们需要映射view到一个URL,在polls文件夹建立一个urls.py文件,在urls.py里面写入以下代码:

polls/urls.py:

from django.conf.urls import url
from . import views

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

下一步是在根目录的URL设置里引用polls.urls模块,在mysite/urls.py增加引用django.conf.urls.include,把include()插入到urlpatterns列表里面:

mysite/urls.py:

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

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

include()函数允许引用其它的URL设置。记住这里的正则表达式不包含$(代表匹配结束),’/polls/’后面的URL应该在polls/urls.py里面。

你应该总是使用include(),除了唯一的例外:admin.site.urls

运行服务器然后进入http://localhost:8000/polls/,你将见到你定义的index view。


url()函数可传入4个参数,其中2个为必须:regexview,2个可选参数:kwargs,name

url() 参数:regex

‘regex’通常是指正则表达式,在这里用来匹配url样式。

记住这里的正则不会搜索GET和POST参数,或者域名。比如,对一个对https://www.example.com/myapp/的请求,URLconf会去寻找myapp/。在一个对https://www.example.com/myapp/?page=3的请求,URLconf也会去找myapp/

如果想知道更多正则表达式,推荐去看Wikipedia’s entry和标准库re的文档。

url() 参数:view

当Django发现一个正则表达式匹配,Django会调用特定的view函数,并且把HttpRequest作为第一个参数,从正则表达式捕获的其它值作为其它参数传入view函数。

url() 参数:kwargs

任意的关键字参数可以当作一个字典传给目标view。在这个Django tutorial里不会使用这个参数。

url() 参数:name

命名你的URL让你不会把它和Django的其它URL搞混。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值