Django学习记录

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: Django学习记录

Django应用框架

**安装Django**:
pip install django -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
**创建Django项目**:
django-admin startproject DjangoDemo1
**文件目录层级说明**:
manage.py:一个命令行工具,可以使我们用多种方式对Django项目进行交互
**project项目目录**:
init.py:一个空文件,它告诉python这个目录应该被看做一个python包
setting.py:项目的配置文件
urls.py:项目的URL声明
wsgi.py:项目与WSGI兼容的Web服务器入口
**windows安装mysql:**
下载地址:https://dev.mysql.com/downloads/mysql/
跳过登录直接下载
**环境变量**:
变量名:MYSQL_HOME
变量值:E:\mysql-5.7.20-winx64
以管理员身份运行cmd
进入D:\mysql-8.0.12-winx64\bin
执行:mysqld --initialize-insecure --user=mysql    #会生成目录下生成data目录
管理员运行:mysqld -install
启动服务:
net start MySQL
连接:
mysql -u root -p

修改setting.py文件

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'sunck',
'USER': 'root',
'PASSWORD': '',
'HOST': 'localhost',
'PORT': '3306'
}
}

创建:app01

执行 python manage.py startapp app01

在setting中奖app01应用加入INSTALL_APPS选项中

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app01'
]

创建模型:model.py文件中

class Grades(models.Model):
    gname = models.CharField(max_length=20)
    gdate = models.DateTimeField()
    ggirlnum = models.IntegerField()
    gboynum = models.IntegerField()
    isDelete = models.BooleanField(default=False)
class Students(models.Model):
    sname = models.CharField(max_length=20)
    sgender = models.BooleanField(default=True)
    sage = models.IntegerField()
    scontent = models.CharField(max_length=20)
    isDelete = models.BooleanField(default=False)

关联外键

sgrade = models.ForeignKey(“Grades”)


生成数据表在数据库中:

生成迁移文件:python manage.py makemigrations #在migrations目录下生成一个迁移文件

执行迁移:python manage.py migrate

执行完之后去数据库中查询数据,发现表已经生成。

测试数据操作:

进入python shell : python manage.py shell

引入一些包:

from app01.models import Grades,Students

from django.utils import timezone

from datetime import *

查询所有数据:

Grades.object.all()

添加数据:创建一个模型类的对象实例

创建对象

grade1 = Grades()
grade1.gname = "gaojianshuai"
grade1.gdate = datetime(year=2019,month=12,day=9)
grade1.ggirlnum = 3
grade1.gboynum=30
grade1.save()
grade2.gname = "linjiayin"
grade2.ggirlnum = 4
grade2.gboynum=13
grade2.gdate = datetime(year=2020,month=1,day=25)
grade2.save()

查看某个对象:

Grades.objects.all()

Grades.objects.get(pk=1)

Grades.objects.get(pk=2)

grade2

修改某个属性:模型对象.属性 = 新值

grade2.ggirlnum = 555

grade2.save()

删除数据:

模型对象.delete() grade2.delete()

启动服务器:

python manage.py runserver

admin站点管理:


内容发布:负责添加、修改、删除内容


配置admin应用:在setting中的INSTALL_APPS中添加’django.contrib.admin’,默认是已经添加好的


创建管理员用户:python manage.py createsuperuser


账号密码:sunck 1234567890


访问:127.0.0.1:8000

127.0.0.1:8000/admin

界面汉化:

在setting文件中修改如下

LANGUAGE_CODE = ‘en-us’ #修改为zh-Hans

TIME_ZONE = ‘Asia/Shanghai’

管理数据表:

通过修改admin.py文件:

from .models import Grades,Students

#注册

admin.site.register(Grades)

admin.site.register(Students)

自定义管理页面:


列表页

list_display = [‘pk’, ‘gname’, ‘gdate’, ‘ggirlnum’, ‘gboynum’]#显示字段
list_filter = [‘gname’]#过滤字段
search_fields = [‘gname’]#搜索字段
list_per_page = 5#分页
#添加,修改页面
fields = [ ‘gname’, ‘ggirlnum’, ‘gdate’, ‘gboynum’, ‘idDelete’]#属性的先后顺序

fieldsets = #给属性分组

注意:field与fieldset不能同时使用

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
存储 缓存 数据库
Django框架学习(四)
Django框架学习(四)
|
前端开发 关系型数据库 MySQL
Django框架学习(三)
Django框架学习(三)
|
JSON 前端开发 数据库
Django框架学习(一)
Django框架学习(一)
|
2月前
|
IDE 关系型数据库 MySQL
Django学习一:创建Django框架,介绍Django的项目结构和开发逻辑。创建应用,编写主包和应用中的helloworld
这篇文章是关于如何创建一个Django框架,介绍Django的项目结构和开发逻辑,并指导如何创建应用和编写“Hello, World!”程序的教程。
43 3
Django学习一:创建Django框架,介绍Django的项目结构和开发逻辑。创建应用,编写主包和应用中的helloworld
|
2月前
|
SQL Java 数据库
Django学习三:views业务层中通过models对实体对象进行的增、删、改、查操作。
这篇文章是关于如何使用Django框架的ORM系统在视图(views)层面进行数据库的增、删、改、查操作的教程。
22 0
Django学习三:views业务层中通过models对实体对象进行的增、删、改、查操作。
|
2月前
|
关系型数据库 MySQL Java
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
这篇文章是关于如何使用Django框架配置MySQL数据库,创建模型实例,并自动或手动创建数据库表,以及对这些表进行操作的详细教程。
69 0
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
|
6月前
|
编解码 前端开发 JavaScript
技术经验分享:Django学习日记
技术经验分享:Django学习日记
【Django学习】(十六)session_token认证过程与区别_响应定制
【Django学习】(十六)session_token认证过程与区别_响应定制
|
7月前
|
Python
Django 学习教程-介绍与安装
本章介绍了Django是什么,以及为什么使用Django和安装Django
73 1
Django 学习教程-介绍与安装
|
7月前
|
调度 Apache 数据库
Django 学习教程-第一个 Django 应用
本章主要讲述了如何创建一个Django项目,以一个投票案例程序介绍了Django的请求和响应流程。
90 1