2019-04-28——Django学习
1、Django: Python Web应用开发框架,Django是走大而全的方向,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就能自动生成数据库结构、以及全功能的管理后台。
2、Flask:轻量级Web应用框架,也被称为“microframework”,因为它使用简单的核心,用extension增加其他功能。Flask没有默认使用的数据库、窗体验证工具。
3、Web2py:全栈式Web框架,旨在敏捷快速的开发Web应用,具有快速、安全以及可移植的数据库驱动的应用,兼容Google App Engine。
4、Dpark:是Spark的Python克隆,是一个Python实现的分布式计算框架,可以非常方便地实现大规模数据处理和迭代计算。
5、Tornado:异步非阻塞IO的Python Web框架,高并发处理框架。
6、Twisted:是用Python实现的基于事件驱动的网络引擎框架,Twisted支持许多常见的传输及应用层协议,Twisted对于其支持的所有协议都带有客户端和服务器实现,同时附带有基于命令行的工具,使得配置和部署产品级的Twisted应用变得非常方便。
7、Scrapy:Python的爬虫框架,轻量级的,简单轻巧,并且使用起来非常的方便。
二、Django项目创建步骤
1、选择工具
选择适合自己的Python版本(最新为Python3.7),以及开发工具(如,pycharm等),再安装合适的Django版本(最新为Django2.2)。
2、创建Django项目,设置虚拟环境

虚拟环境的创建,目的是存储该项目运行所需环境,以及保证该项目的运行不会受到其他项目和其他版本的包的影响。
3、配置数据库
3.1 配置数据库
(1)使用MySQL数据库,在setting.py文件中配置,这种方法需要引下载PyMySQL包
下载PyMySQL包,File -> setting -> 项目名 -> Probject Interpreter,如下图即可:


setting.py初始设置:

配置后:

(2)使用Django自带的sqlite3数据库,使用默认配置即可

3.2 引入PyMySQL
在项目文件夹下面的__init__.py文件中引入。

4、启动服务
(1)在 Terminal 输入python maange.py runserver 127.0.0.1:8000,即可运行项目;
(2)设置manage.py的Parameters:runserver 127.0.0.1:8000,在run manage.py即可运行项目。

5、创建应用(app)
app是根据项目所需的模块进行创建,如创建一个用户app,用来管理用户等,步骤如下:
(1)在 Terminal 中输入python manage.py startapp app名称,如,userapp,就会生成userapp文件夹,以及相应配置文件,如下图;


(2)在setting.py中引入userapp,每创建一个app,这里都需要引入。

6、创建模型
6.1 创建模型类
Django框架提供了ORM框架,可以根据代码自动生成数据表,创建模型类,为生成数据表做准备。
from django.db import models
# Create your models here.
class UsersInfo(models.Model):
username = models.CharField(max_length=20)
password = models.CharField(max_length=20)
gender = models.BooleanField(default=True)
#...(根据项目需要,设置属性)
6.2 执行迁移,生成数据表
(1)在 Terminal 中输入python manage.py makemigrations ,生成迁移文件;
(2)在 Terminal 中输入python manage.py migrate ,执行迁移,生成数据表;

7、后台管理页面
7.1 创建管理员
在 Terminal 中输入python manage.py createsuperuser ,创建管理员,输入网址:127.0.0.1:8000/admin ,进入管理员页面。
7.2 注册模型类
在admin.py 中注册模型类,即可在后台管理页面显示相应的数据列表。
from django.contrib import admin
from userapp.models import UsersInfo class UsersInfoAdmin(admin.ModelAdmin):
list_display = ['username', 'password', 'gender'] #设置列表要显示的属性 admin.site.register(UsersInfo,UsersInfoAdmin)
效果如下:


三、总结及安排
1、学习了Django项目的创建,及简单的增删改查,但是还不熟练;
2、接下来将学习及搞懂增删改查,以及Django自带的前后端交互;
3、学习Django+Ajax,尝试Django后端与微信小程序的数据交互。
2019-04-28——Django学习的更多相关文章
- AI2(App Inventor 2)离线版服务器(2019.04.28更新)
我们的目标:搭建一个本地多用户的App Inventor 2 服务器 演示: http://ai2.fsyz.net [旧 win] http://ai2n.fsyz.net [新 Ce ...
- [2019.04.01]Linux 学习心得(2)-- tar 命令的理解
这篇文章并不是发布最早的但是阅读量却每天都见长,很想知道各位大大是怎么找到这篇文章的.如果不忙,还请各位大大评论一下我看看,没准我可以为大家改进一下本文,提升一下质量. =============== ...
- Python框架之Django学习
当前标签: Django Python框架之Django学习笔记(十四) 尛鱼 2014-10-12 13:55 阅读:173 评论:0 Python框架之Django学习笔记(十三) 尛 ...
- Django学习(4)表单,让数据库更美好
表单,在HTML中的标签为<form></form>,在网页中主要负责数据采集功能.我们在浏览网站时,常常会碰到注册账号.账号登录等,这就是表单的典型应用. 在Django学习 ...
- Alpha冲刺(5/10)——2019.4.28
所属课程 软件工程1916|W(福州大学) 作业要求 Alpha冲刺(5/10)--2019.4.28 团队名称 待就业六人组 1.团队信息 团队名称:待就业六人组 团队描述:同舟共济扬帆起,乘风破浪 ...
- Django学习系列3:创建仓库
在创建仓库之前,在项目superlists中新建一个Python文件,命名为functional_tests.py,里面的内容如下: # File: functional_test.py # Auth ...
- Django学习之路由分发和反向解析
原 Django学习之路由分发和反向解析 2018年07月12日 14:04:55 huangql517 阅读数 519 1>路由分发 我们之前学习的路由配置都是在项目的全局控制文件(项目名称目 ...
- Django 学习笔记1-- URLconf
今天好像巴黎有点乱,希望明天太阳还会照常升起. 简介 Django 是一个由 Python 编写.开源并采用经典的 MVC 设计模式的 Web Full Stack 应用框架. 在 Django 中, ...
- 2014.04.28基于CPLD的LCOS场序彩色视频控制器设计
基于CPLD的LCOS场序彩色视频控制器设计 作者:宋丹娜,代永平,刘艳艳,商广辉 发表刊物:液晶与显示,2009 学习时间:2014.04.28 文章讲述了-- (和上一篇论文有些相似之处) 1. ...
- 今天主要推荐一下django学习的网址!
前言:每个月忙碌的头20天后,在上班时间投入到django理论学习的过程中,花了差不多3天时间简单的研究了一下django,着实废了我不少脑细胞. 采用虫师前辈的一张图和话: 如果你把这过程梳理清晰了 ...
随机推荐
- kong api可视化管理工具konga安装
说明:官网推荐: kong-dashboard,但对比界面高端程度和友好度,更推荐konga.[一个坑]kong版本问题:我在安装时目前kong最新版本已经到1.0.0, 对于konga和kong-d ...
- ajaxFileUpload 文件上传
源码: jQuery .extend({ createUploadIframe : function(id, uri) {//id为当前系统时间字符串,uri是外部传入的json对象的一个参数 //c ...
- IoC容器的接口设计
1.从接口BeanFactory---HierarchicalBeanFactory---ConfigurableBeanFactory,是一条主要的BeanFactory设计路径. 2.第二条接口设 ...
- gevent-websocket初识
初试 from flask import Flask, request from geventwebsocket.handler import WebSocketHandler from gevent ...
- 安卓版的pvr图片查看
public class PVRTDecompress { /* author:FormatFa mail :1758759399@qq.com date :2017-6-14 */ //modify ...
- Vue 封装可向左向右查看图片列表的组件
<template> <div class="content-container"> <div class="content-contain ...
- 小程序2-基本架构讲解(一)JSON配置与详解
项目里边生成了不同类型的文件: .json 后缀的 JSON 配置文件 .wxml 后缀的 WXML 模板文件 .wxss 后缀的 WXSS 样式文件 .js 后缀的 JS 脚本逻辑文件 JSON 配 ...
- java 括号匹配 成对
import java.util.Stack; public class Solution { public static void main(String[] args) { Solution s ...
- ASP.NET MVC 3 Application Upgrader
ASP.NET MVC 3 Application Upgrader: http://aspnet.codeplex.com/releases/view/59008
- java.lang.StackOverflowError
在开发中经常会遇到内存溢出的情况,大部分原因是因为:代码中有死循环.过度递归等情况 解决办法:看报错 找到是因为死循环还是过度递归,改掉即可 我的报错原因是使用了 new Gson.().toJson ...