原以为自己学了web用eclipse就会设计网页的我被这个时代的快速更迭给打击到,大佬告诉我目前最流行Web开发的Django框架满足大多数人的需求,为什么选择Django?官网这么告诉我们:
Django框架负责处理大部分web开发底层细节(如协议解析),专注开发上层逻辑结构。
1.Django优势所在
-
快速开发:其使用python、数据库ORM系统等,提高开发效率,使用户访问使用简洁等。
-
大量内置应用:后台管理系统admin、用户认证系统auth、会话系统sessions等
-
安全性高:表单验证,防止人为构造表单攻击、SQL注入,非法进入数据库、跨站点攻击等
-
易于扩展:使用应用划分逻辑功能,网站需要更新则增加应用即可
2.使用Django知识储备
Python基础(入门能看懂先)、数据库SQL、HTTP协议、HTML&CSS、正则表达式(处理文本的重要工具)等
3.Django开发环境搭建
安装python、ipython、pip、django步骤百度可查,这里不做介绍。
编写第一个Django项目
#打开命令行,进入你要创建的目录下
#建立mysite项目
Django-admin startproject mysite
#进入mysite目录,启动服务器
Python manage.py runserver
#显示本机url
#打开浏览器访问url
当输出如下:
现在,服务器正在运行,浏览器访问此URL,会出现如下页面:
则代表项目创建成功了。
4.Django创建工程及应用
在上面已创建mysite工程,这里不再重复
- 工程目录介绍,mysite工程目录如下
1)manage.py(大管家)
管理项目:包括数据库建立(makemigrations、migrate命令)、服务器运行(runserver)、测试(shell)等
2)mysite目录
(1)settings.py(配置文件):配置应用、中间件、数据库、静态目录各类配置
(2)urls.py(URL映射配置文件):决定一个url访问被哪个程序(函数)响应
(3)wsgi.py:Pyhton应用程序或框架和Web服务器之间接口(用于上线用户使用)
-
创建应用
django中使用应用来分割功能,结构清晰,利于复用
(1)创建应用blog:
python manage.py startapp blog
(2)添加blog应用: 在mysite/settings.py ->installed_apps中添加blog
-
应用目录详解
(1)views.py:响应客户请求返回页面,不同的url不同的页面显示
(2)models.py:定义数据库中的表
(3)admin.py:admin相关,管理数据库后台,辅助应用
(4)tests.py:测试相关
- 编写视图
#在工程内已创建blog应用
1.在blog/views.py内编辑代码
from django.shortcuts import render
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello,welcome my girl!")
2.想看到效果,需要一个URL映射到它,需创建URLconf,
在 blog 目录里新建一个
urls.py
文件:
from django.urls import path
from . import views
urlpatterns=[
path('',views.hello,name='hello'),
]
3.要在根URLconf文件中指定blog.urls模块
在
mysite/urls.py
编辑代码:
from django.contrib import admin
from django.urls import include,path
urlpatterns = [
path('blog/',include('blog.urls')),
path('admin/', admin.site.urls),
]
4.此时hello视图已添加到URLconf中,验证是否成功
python manage.py runserver
#浏览器访问 http://localhost:8000/blog/