从零开始python django建站(一)

1.安装django

pip install Django

2.检查django是否成功安装


从零开始python django建站(一)_第1张图片
image.png

3.创建第一个项目名叫myblog

django-admin.py startproject myblog
[root@MyServer ~]# cd myblog/
[root@MyServer myblog]# tree
.
├── manage.py
└── myblog
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

4.启动服务

[root@MyServer myblog]#  python manage.py runserver 127.0.0.1:80
Performing system checks...
System check identified no issues (0 silenced).
You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
March 03, 2018 - 04:02:04
Django version 1.11.10, using settings 'myblog.settings'
Starting development server at http://127.0.0.1:80/
Quit the server with CONTROL-C.

使用浏览器打开http://127.0.0.1:80/,正确结果应如下


从零开始python django建站(一)_第2张图片
image.png

5.新增一个视图
在myblog/myblog下新增一个view.py 文件,内容如下

from django.http import HttpResponse

def hello(request):
    return HttpResponse("Hello world ! ")

修改urls.py文件
内容如下

from django.conf.urls import url
from django.contrib import admin
import view
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^$', view.hello),
]

打开127.0.0.1:80,显示


从零开始python django建站(一)_第3张图片
image.png

此时你的文件目录应该如下:

[root@MyServer myblog]# tree
.
├── db.sqlite3
├── manage.py
└── myblog
    ├── __init__.py
    ├── __init__.pyc
    ├── settings.py
    ├── settings.pyc
    ├── urls.py
    ├── urls.pyc
    ├── view.py
    ├── view.pyc
    ├── wsgi.py
    └── wsgi.pyc

6.新增一个html模板
django通过视图传输变量给模板,在模板中展示网页数据内容。模板可以复用,可以循环,可以执行判断等,我们来新建一个简单的模板文件
在myblog/myblog下新增一个templates文件夹,以后我们所有的html模板文件都放在这个文件夹底下,在templates 下新增一个hello.html的模板文件

{{ v1 }}

为了让django知道我们的模板文件存在位置,我们需要在settings.py这个配置文件中添加路径,修改 TEMPLATES 中的 DIRS 为 [BASE_DIR+"/templates",]
修改urls.py文件,通过访问127.0.0.1:80/hello 来到达view.hello这个视图

from django.conf.urls import url
from django.contrib import admin
import view
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'hello', view.hello),
]

修改view.py文件,让view.hello这个函数调用hello.html模板来展示

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

def hello(request):
    context = {}
    context['v1'] = "Hello world!"
    return render(request,'hello.html',context)

可以看到我们通过render将视图和模板联系在一起,更具体地,我们通过一个字典来传递视图中的变量给模板。v1这个变量在模板中通过两个花括号来调用{{ v1 }}。后续我们会经常用到这种方法。
模板中还可以进行很多的逻辑行为,这里不再展开,大家可以参考这个文档:https://www.w3cschool.cn/django/django-template.html
结果如下,带有格式的hello world:

从零开始python django建站(一)_第4张图片
image.png

你可能感兴趣的:(从零开始python django建站(一))