一.Django介绍

Django是一个开放源代码的Web应用框架,由Python写成,采用了MVC的框架模式。Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以“插件”形式服务于整个框架,Django有许多功能强大的第三方插件,可以很方便的开发出自己的工具包。

二.创建Django Project

环境:Django(1.11.6)

使用pip安装django

root@710bd3e4deb6:~# python3 -m pip install Django

新建Project(工程名为Django)

root@710bd3e4deb6:~/web# django-admin.py startproject Django

运行项目

root@710bd3e4deb6:~/web/Django# python3 manage.py runserver

访问地址http://127.0.0.1:8000

三.创建Django App

新建App(App相当时Project下的应用,应用名为user)

root@710bd3e4deb6:~/web/Django# python3 manage.py startapp user

修改Django项目配置Django/settings.py,把user应用添加到Django项目中,修改INSTALLED_APPS项增加user

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'user', # 增加user
]

修改user/models.py,Model相当于对数据库表的封装,类名User代表数据库表名,username和password为字段名

from django.db import models

class User(models.Model):
# Django会自动添加一个id作为主键
username = models.CharField(max_length=64)
password = models.CharField(max_length=64)

通知Django项目user应用模型有变化

root@710bd3e4deb6:~/web/Django# python3 manage.py makemigrations user

创建数据库表结构

root@710bd3e4deb6:~/web/Django# python3 manage.py migrate

修改Django项目配置Django/settings.py,设置静态文件访问目录,文件最后增加

STATIC_ROOT = os.path.join(BASE_DIR, 'static')

STATICFILES_DIRS = (
("css", os.path.join(STATIC_ROOT, 'css')),
("js", os.path.join(STATIC_ROOT, "js")),
("images", os.path.join(STATIC_ROOT, "images")),
)

增加添加数据和展示数据的视图,修改user/views.py

from django.shortcuts import render
from user.models import User
from django.http import HttpResponse def add(request):
u = request.GET["username"]
p = request.GET["password"]
user = User(username=u, password=p)
user.save()
return HttpResponse("success") def list(request):
list = User.objects.all()
context = dict()
context["users"] = list
return render(request, 'list.html', context)

创建数据展示的前端页面,创建templates/list.html

{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link href="{% static 'css/bootstrap.css' %}" rel="stylesheet">
</head>
<body>
<div class="container">
<div class="row">
<table class="table">
<thead>
<tr>
<th>ID</th>
<th>用户名</th>
<th>密码</th>
</tr>
</thead>
<tbody>
{% for user in users %}
<tr>
<td> {{ user.id }}</td>
<td> {{ user.username }}</td>
<td> {{ user.password }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div> <script src="{% static 'js/jquery-3.2.1.js' %}"></script>
<script src="{% static 'js/bootstrap.js' %}"></script>
</body>
</html>

新建static目录,添加list.html依赖的css和js文件,目录结构

root@710bd3e4deb6:~/web/Django# tree static/
static/
|-- css
| `-- bootstrap.css
`-- js
|-- bootstrap.js
`-- jquery-3.2..js

修改Django项目路由配置Django/urls.py,增加视图list和add方法的路由

from django.conf.urls import url
from django.contrib import admin
from user import views as user_view urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'add', user_view.add),
url(r'list', user_view.list),
]

四.验证工程

运行部署

root@710bd3e4deb6:~/web/Django# python3 manage.py runserver

调用add接口增加记录

访问地址http://127.0.0.1:8000/add?username=Google&password=123456

访问地址http://127.0.0.1:8000/list

Django Web框架入门的更多相关文章

  1. 教程:Visual Studio 中的 Django Web 框架入门

    教程:Visual Studio 中的 Django Web 框架入门 Django 是高级 Python 框架,用于快速.安全及可扩展的 Web 开发. 本教程将在 Visual Studio 提供 ...

  2. [oldboy-django][1初始django]web框架本质 + django框架 + ajax

    web框架本质 浏览器(socket客户端) - 发送请求(ip和端口,url http://www.baidu.com:80/index/) - GET 请求头(数据请求行的url上: Http1. ...

  3. Python Flask Web 框架入门

    Python Flask 目录 本文主要借鉴 letiantian 的文章 http://www.letiantian.me/learn-flask/ 一.简介 二.安装 三.初始化Flask 四.获 ...

  4. Django web框架篇:基础

    对于web开发者来说,socket是基础.因为Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. 对于真实开发中的python web程序来说,一般会分为两 ...

  5. 初识DJango——Web框架

    一.Web框架 HTTP特点 1.简单快速:客户向服务器请求服务时,只需传送请求方法和路径.请求方法常用的有GET.HEAD.POST.每种方法规定了客户与服务器联系的类型不同. 由于HTTP协议简单 ...

  6. Django:web框架本质

    一,web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 1,自定义web框架 impo ...

  7. Linux(CentOS7)系统中部署Django web框架

    1. 概述 部署django和vue架在逻辑上可以分为web层与数据库层:web前端通过实现了WSGI协议的模块对python代码进行解析,而python代码中则通过特定于数据库的操作接口对数据库进行 ...

  8. Django web框架 下载安装 简单项目搭建

    什么是web应用? Web应用程序是一种可以通过Web访问的应用程序,程序的最大好处是用户很容易访问应用程序,用户只需要有浏览器即可,不需要再安装其他软件 应用程序有两种模式C/S.B/S.C/S是客 ...

  9. 比我的脸还干的gan货——Python Flask Web 框架入门

    Flask是一个轻量级的基于Python的web框架. 本文适合有一定HTML.Python.网络基础的同学阅读. 1. 简介 这份文档中的代码使用 Python 3 运行.是的,所以读者需要自己在电 ...

随机推荐

  1. jquery-easyUI第一篇【介绍、入门、使用常用的组件】

    什么是easyUI 我们可以看官方对easyUI的介绍: easyUI就是一个在Jquery的基础上封装了一些组件-.我们在编写页面的时候,就可以直接使用这些组件-非常方便-easyUI多用于在后台的 ...

  2. 从content-type设置看Spring MVC处理header的一个坑

    我们经常需要在HttpResponse中设置一些headers,我们使用Spring MVC框架的时候我们如何给Response设置Header呢? Sooooooooooooo easy, 看下面的 ...

  3. JMeter基础之—录制脚本

    Jmeter 是一个非常流行的性能测试工具,虽然与LoadRunner相比有很多不足,比如:它结果分析能力没有LoadRunner详细:很它的优点也有很多: l       开源,他是一款开源的免费软 ...

  4. jquery自定义banner图滚动插件---(解决最后一张图片倒回第一张图片的bug)

    banner图的滚动效果动画 最近做项目中banner滚动的时候遇到了一个小bug,当banner滚动到最后一张图再跳回第一张图时, 会出现默认的倒回第一张图的过渡效果,看了几个插件都是这样,所以自定 ...

  5. angularui 自定义选项卡

    ng-include 选取ng-template <!DOCTYPE html> <html lang="en" ng-app="myApp" ...

  6. python基础之条件循环语句

    前两篇说的是数据类型和数据运算,本篇来讲讲条件语句和循环语句. 0x00. 条件语句 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语 ...

  7. [js高手之路] html5 canvas系列教程 - 认识canvas以及基本使用方法

    canvas是html5中引入的一个新元素,俗称画布,既然是画布,当然是用来画图的.canvas技术指的是利用javascript操作canvas元素绘制图形的技术,要使用canvas,一定要浏览器支 ...

  8. Vuforia开发完全指南---License Manager和Target Manager详解

    License Manager和Target Manager License Manager 对于每一个用Vuforia开发的AR程序来说,都有一个唯一的license key,在Unity中必须首先 ...

  9. Writing Science 笔记 6.19

    1.练习由三个部分组成:写短文,反复修改:分析别人的文章是怎么写的:练习句子结构,如何用词. 2.写作的目的不在于发表而在于能够给人以灵感从而使文章得到更多的引用. 3.写得清楚,你必须清楚地思考,无 ...

  10. 【JVM命令系列】javap

    命令基本概述 javap是JDK自带的反汇编器,可以查看java编译器为我们生成的字节码.通过它,可以对照源代码和字节码,从而了解很多编译器内部的工作.可以在命令行窗口先用javap -help看下j ...