一.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. Markdown格式

    一个例子: 例子开始 1. 本章学习总结 今天主要学习了三个知识点 封装 继承 多态 2. 书面作业 Q1. java HelloWorld命令中,HelloWorld这个参数是什么含义? 今天学了一 ...

  2. 如何选择适合的前端UI框架

    根据近几年前端框架的热门,在前端开发框架不断更新与交换的时代,每一年都有黑马出现,是否适合自己开发的项目就不得而知了,只有认真的了解之后才能知道,这里主要给大家说一下如何选择适合旅游的前端UI框架?相 ...

  3. lintcode.22 平面列表

    平面列表    描述 笔记 数据 评测 给定一个列表,该列表中的每个要素要么是个列表,要么是整数.将其变成一个只包含整数的简单列表. 注意事项 如果给定的列表中的要素本身也是一个列表,那么它也可以包含 ...

  4. Oracle--新建用户以及赋予的权限

    1, 以dba方式登录Oracle 2, 创建用户,Users-->New ... 输入用户名和密码 3, 赋予connect/resource角色 4, 赋予该用户 对视图操作的相关权限 以下 ...

  5. JavaSE(十二)之IO流的字节流(一)

    前面我们学习的了多线程,今天开始要学习IO流了,java中IO流的知识非常重要.但是其实并不难,因为他们都有固定的套路. 一.流的概念     流是个抽象的概念,是对输入输出设备的抽象,Java程序中 ...

  6. angular学习笔记04 理论加实践

    scope: 布尔型或对象(默认为false) ,为true时继承父作用域并创建一个新的作用域隔离作用域具有隔离作用域的指令最主要的使用场景是创建可复用的组件, 组件可以在未知上下文中使用,并且可以避 ...

  7. php数组合并,反转,去重,添加元素等;

    //参数默认值//function abc($a,$b,$c = 0){// echo $a,$b,$c;//}//abc(1,3);//结果等于130://echo "<br> ...

  8. 15.linux-LCD层次分析(详解)

    如果我们的系统要用GUI(图形界面接口),这时LCD设备驱动程序就应该编写成frambuffer接口,而不是像之前那样只编写操作底层的LCD控制器接口. 什么是frambuffer设备? frambu ...

  9. [js高手之路] html5 canvas系列教程 - 像素操作(反色,黑白,亮度,复古,蒙版,透明)

    接着上文[js高手之路] html5 canvas系列教程 - 状态详解(save与restore),相信大家都应该玩过美颜功能,而我们今天要讲的就是canvas强大的像素处理能力,通过像素处理,实现 ...

  10. JS设计模式(一) 单例模式

    命名空间 单例模式是JavaScript中最常见的一种模式,通过这种模式可以为我们提供一个命名空间,例如jQuery库的命名空间为jQuery或$.命名空间的使用是为了让代码更加整洁,在多人协作开发的 ...