开发:Django(1)

一、安装

sudo pip install Django

二、Verifying(校验)

>>> import django
>>> print(django.get_version())
1.10

或者
终端 直接输入:
$ python -m django --version

三、编写一个Django应用

1、Creating a project

在终端切换到你想要存放源码的目录,然后输入:

django-admin startproject mysite

就会创建一个mysite文件夹,里面是一些自动生成的源码。

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

2、运行项目

首先在终端切换到你项目目录下(outer mysite),然后输入:

python manage.py runserver

然后输出:
Performing system checks...

System check identified no issues (0 silenced).

You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.

March 11, 2017 - 15:50:53
Django version 1.10, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

现在你就可以访问:http://127.0.0.1:8000/

3、修改服务的IP和端口

python manage.py runserver 8080 # 修改端口号
python manage.py runserver 0.0.0.0:8000 # 修改IP


注:自动重新加载服务
Automatic reloading of runserver

The development server automatically reloads Python code for each request as needed. You don’t need to restart the server for code changes to take effect. However, some actions like adding files don’t trigger a restart, so you’ll have to restart the server in these cases.

4、创建APP

在 manage.py 所在的目录下运行命令:

python manage.py startapp polls

APP目录结构:

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

这样就在项目里创建了一个应用。

在 settings.py 的 INSTALLED_APPS 中添加上刚创建的应用的名称。这个的作用就是:在查找模板的时候,会按照INSTALLED_APPS中的顺序查找,如果不指定会报找不到模板的错误[ TemplateDoesNotExist ]。

views.py 文件中编写代码:

# polls/views.py

from django.shortcuts import render
from django.http import HttpResponse

def index(request):
    return HttpResponse("Hello World!")

在你新创建的应用文件夹下,创建一个 urls.py 文件,然后在 mysite 文件夹下的 urls.py 文件中配置:

# mysite/urls.py

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

urlpatterns = [
    # polls/是 polls这个应用的访问路径名称
    url(r'^polls/', include('polls.urls')),
    url(r'^admin/', admin.site.urls)
]

在应用下的urls中:

# polls/urls.py

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

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

当我们访问 http://127.0.0.1:8000/polls 路径时就会跳转到新的页面。

5、为应用添加模板

在应用的目录下新建一个 templates 文件夹,编写一个html文件,修改:

# polls/views.py

from django.shortcuts import render
from django.http import HttpResponse

def index(request):
    return render(request, 'index.html')

再次访问 : http://127.0.0.1:8000/polls 路径时就会跳转到index.html。

6、向网页传递数据

# polls/views.py

from django.shortcuts import render
from django.http import HttpResponse

def index(request):
    return render(request, 'index.html', {'data': 'HELLO, WORLD!'})

7、创建Model

# polls/models.py

# -*- coding:utf-8 -*-
from __future__ import unicode_literals

from django.db import models

# 类继承 models.Model
class Article(models.Model):
    title = models.CharField(max_length = 32, default = 'Title')
    content = models.TextField(null = True)

在modules.py文件中创建好Model之后,在控制台输入命令:

# 准备迁移
python manage.py makemigrations

# 迁移 
python manage.py migrate

# 查看SQL语句
python manage.py sqlmigrate 应用名称 文件id

先手动向数据库添加一条数据,查询并返回数据到页面:

# polls/views.py

from django.shortcuts import render
from django.http import HttpResponse
from . import models


def index(request):
    article = models.Article.objects.get(pk=1)
    return render(request, 'index.html', {'article': article})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

outer199

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值