前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Django学习记录

Django学习记录

作者头像
懿曲折扇情
发布2022-08-24 12:59:22
3770
发布2022-08-24 12:59:22
举报
文章被收录于专栏:建帅技术分享

Django应用框架

代码语言:javascript
复制
**安装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文件:

代码语言:javascript
复制
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选项中

代码语言:javascript
复制
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app01'
]

创建模型:model.py文件中

代码语言:javascript
复制
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() 添加数据:创建一个模型类的对象实例 创建对象

代码语言:javascript
复制
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不能同时使用

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Django应用框架
  • 列表页
  • fieldsets = #给属性分组
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档