iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >django_mysql_配置
  • 162
分享到

django_mysql_配置

2023-01-31 00:01:57 162人浏览 薄情痞子
摘要

配置 1. 安装PyMysql pip install Pymysql   然后在项目同名_init__添加 from pymysql import install_as_MySQLdb install_as_MySQLdb() 如下

配置

1. 安装PyMysql

pip install Pymysql

 

然后在项目同名_init__添加

from pymysql import install_as_MySQLdb

install_as_MySQLdb()

如下

image_thumb

2. 让Django使用mysql,修改setting配置,如下:

DATABASES = {
    'default': {
        'ENGINE': 'djanGo.db.backends.mysql',
        'HOST': '127.0.0.1',  # 数据库主机
        'PORT': 3306,  # 数据库端口
        'USER': 'root',  # 数据库用户名
        'PASSWord': 'mysql',  # 数据库用户密码
        'NAME': 'django_demo'  # 数据库名字
    }
}

image_thumb[1]

3. 在自己数据中创建一个djangi_demo

create database django_demo default charset=utf8;

 

定义模型类

1. 创建一个新的应用,为booktest,在models.py 文件中定义模型类,然后去setting注册应用

python manage.py startapp booktest

image_thumb[2]

from django.db import models

#定义图书模型类BookInfo
class BookInfo(models.Model):
    btitle = models.CharField(max_length=20, verbose_name='名称')
    bpub_date = models.DateField(verbose_name='发布日期')
    bread = models.IntegerField(default=0, verbose_name='阅读量')
    bcomment = models.IntegerField(default=0, verbose_name='评论量')
    is_delete = models.BooleanField(default=False, verbose_name='逻辑删除')

    class Meta:
        db_table = 'tb_books'  # 指明数据库表名
        verbose_name = '图书'  # 在admin站点中显示的名称
        verbose_name_plural = verbose_name  # 显示的复数名称

    def __str__(self):
        """定义每个数据对象的显示信息"""
        return self.btitle

#定义英雄模型类HeroInfo
class HeroInfo(models.Model):
    GENDER_CHOICES = (
        (0, 'male'),
        (1, 'female')
    )
    hname = models.CharField(max_length=20, verbose_name='名称')
    hgender = models.SmallIntegerField(choices=GENDER_CHOICES, default=0, verbose_name='性别')
    hcomment = models.CharField(max_length=200, null=True, verbose_name='描述信息')
    hbook = models.ForeignKey(BookInfo, on_delete=models.CASCADE, verbose_name='图书')  # 外键
    is_delete = models.BooleanField(default=False, verbose_name='逻辑删除')

    class Meta:
        db_table = 'tb_heros'
        verbose_name = '英雄'
        verbose_name_plural = verbose_name

    def __str__(self):
        return self.hname

1) 数据库表名,我们要自己定义,可通过db_table 指明数据库表名,不使用他默认创建的,Django默认以 小写app应用名_小写模型类名 为数据库表名。

2) django会为表创建自动增长的主键列,每个模型只能有一个主键列,如果使用选项设置某属性为主键列后django不会再创建自动增长的主键列。默认创建的主键列属性为id,可以使用pk代替,pk全拼为primary key。

3) 字段类型

image_thumb[3]

4) 选项

image_thumb[4]

null是数据库范畴的概念,blank是表单验证范畴的

5) 外键

一般我用CASCADE

在设置外键时,需要通过on_delete选项指明主表删除数据时,对于外键引用表数据如何处理,在django.db.models中包含了可选常量:

  • CASCADE 级联,删除主表数据时连通一起删除外键表中数据

  • PROTECT 保护,通过抛出ProtectedError异常,来阻止删除主表中被外键应用的数据

  • SET_NULL 设置为NULL,仅在该字段null=True允许为null时可用

  • SET_DEFAULT 设置为默认值,仅在该字段设置了默认值时可用

  • SET() 设置为特定值或者调用特定方法,如

from django.conf import settings
from django.contrib.auth import get_user_model
from django.db import models

def get_sentinel_user():
    return get_user_model().objects.get_or_create(username='deleted')[0]

class MyModel(models.Model):
    user = models.ForeignKey(
        settings.AUTH_USER_MODEL,
        on_delete=models.SET(get_sentinel_user),
    )

DO_NOTHING 不做任何操作,如果数据库前置指明级联性,此选项会抛出IntegrityError异常

 

迁移

将模型类同步到数据库中。

1> 生成迁移文件

Python manage.py makemigrations

注:这里可以指定迁移某一个APP

例如users APP:

python manage.py makemigrations users

2> 同步到数据库

python manage.py migrate

 

添加测试数据

1> 添加图书信息

insert into tb_books(btitle,bpub_date,bread,bcomment,is_delete) values
('射雕英雄传','1980-5-1',12,34,0),
('天龙八部','1986-7-24',36,40,0),
('笑傲江湖','1995-12-24',20,80,0),
('雪山飞狐','1987-11-11',58,24,0);

2> 添加英雄信息

insert into tb_heros(hname,hgender,hbook_id,hcomment,is_delete) values
('郭靖',1,1,'降龙十八掌',0),
('黄蓉',0,1,'打狗棍法',0),
('黄药师',1,1,'弹指神通',0),
('欧阳锋',1,1,'蛤蟆功',0),
('梅超风',0,1,'九阴白骨爪',0),
('乔峰',1,2,'降龙十八掌',0),
('段誉',1,2,'六脉神剑',0),
('虚竹',1,2,'天山六阳掌',0),
('王语嫣',0,2,'神仙姐姐',0),
('令狐冲',1,3,'独孤九剑',0),
('任盈盈',0,3,'弹琴',0),
('岳不群',1,3,'华山剑法',0),
('东方不败',0,3,'葵花宝典',0),
('胡斐',1,4,'胡家刀法',0),
('苗若兰',0,4,'黄衣',0),
('程灵素',0,4,'医术',0),
('袁紫衣',0,4,'六合拳',0);
您可能感兴趣的文档:

--结束END--

本文标题: django_mysql_配置

本文链接: https://www.lsjlt.com/news/182418.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • django_mysql_配置
    配置 1. 安装Pymysql pip install PyMySQL   然后在项目同名_init__添加 from pymysql import install_as_MySQLdb install_as_MySQLdb() 如下 ...
    99+
    2023-01-31
  • 【配置】JDK8的安装与配置
    文章目录 JDK8的安装与配置1、选择哪个版本的JDK?2、官网下载2.1 找到导航栏里的Resources下的 Java Downloads2.2 寻找存档版本 Java archive2....
    99+
    2023-09-09
    java 开发语言
  • Python配置与OpenCV进行配置
    最近学习机器学习手写数字识别的过程中需要安装Python与OpenCV,并在Pycharm上运行,在安装配置过程中遇到了很多问题,为此将解决办法记录下来。 一、首先需要安装Python:https://www.python.org...
    99+
    2023-01-31
    Python OpenCV
  • SpringBoot配置 Druid 三种方式(包括纯配置文件配置)
    记录一下在项目中用纯 YML(application.yml 或者 application.properties)文件、Java 代码配置 Bean 和注解三种方式配置 Alibab...
    99+
    2024-04-02
  • Maven安装与配置,Idea配置Maven
    文章目录 一、安装本地Maven二、安装三、配置环境变量四、配置settings文件五、idea配置 一、安装本地Maven 选择你需要的maven版本下载:官网下载传送门 我使用的是3.6.1版本:maven-3.6.1-bi...
    99+
    2023-08-16
    intellij-idea maven java
  • yml配置文件中map的配置
      @Configuration@ConfigurationProperties(prefix = "stable")@Getter@Setter@ToStringpublic class StableCoinConfig { pr...
    99+
    2023-09-03
    java spring mysql
  • cisco 交换机设置及Vlan配置配置(2)
    一、实验目的 1.掌握局域网的划分; 2.掌握 Cisco Packet Tracer 网络设备模拟器的使用; 3.掌握 Cisco2950 交换机的基本命令。。 二、实验场景 实际拓扑图: 三、实验...
    99+
    2023-10-23
    网络 服务器 java
  • dbcp基本配置和重连配置
    转自:http://agapple.iteye.com/blog/772507 最近在看一些dbcp的相关内容,顺便做一下记录,免得自己给忘记了。 ...
    99+
    2024-04-02
  • DolphinScheDuler配置
    一、配置前置准备工作 JDK:下载JDK (1.8+),安装并配置 二进制包:在下载页面下载 DolphinScheduler 二进制包 数据库:PostgreSQL (8.2.15+) 或者 MyS...
    99+
    2023-09-20
    linux 服务器 运维
  • 配置node_exporter
    在Prometheus的架构设计中,PrometheusServer并不直接服务监控特定的目标,其主要任务负责数据的收集,存储并且对外提供数据查询支持。因此为了能够能够监控到某些东西,如主机的CPU使用率,我们需要使用到Exporter。P...
    99+
    2023-09-13
    linux 运维 centos Powered by 金山文档
  • H3C 配置
    H3C 2126进入系统视图   system-view 配置Web网管用户  localuser user_name password 1 进入VTY界面视图  user-interface vty 0 设置Telnet用户登录密码  s...
    99+
    2023-01-31
    H3C
  • mysql_rhcs配置
    mysql==cluster <xml version="1.0"> <cluster config_version="43" name="web-cluster1">  ...
    99+
    2024-04-02
  • H3c配置
    转自:http://www.cnblogs.com/jhtchina/articles/2169775.html华为3COM交换机配置命令详解1、配置文件相关命令[Quidway]display current-configuration ...
    99+
    2023-01-31
    H3c
  • 3W配置
    所需软件:httpd-2.2.3-11.el5_1.3Apache主配置文件vim /etc/httpd/conf/httpd.conf`57   ServerRoot "/etc/httpd"   设置Apache的根目录,通常使用绝对路...
    99+
    2023-01-31
  • Spring:xml 配置
    Bean 配置 xml 配置 反射模式 工厂方法模式 Factory Bean 模式 配置 在 Spring 中,配置 bean 实例一...
    99+
    2023-08-16
    Spring Bean xml 配置
  • PHP.ini配置
    位置 /etc/php5/apache2/php.ini 修改后重启sudo /etc/init.d/apache2 restart ; 这个文件控制了PHP许多方面的性能和行为。 为了让PHP正确读取这个文件, ; 它必须被命名为'ph...
    99+
    2023-08-31
    经验分享
  • innodb_flush_log_at_trx_commit配置
    配置项说明文档写的很清楚:0如果innodb_flush_log_at_trx_commit的值为0,log buffer每秒就会被刷写日志文件到磁盘,提交事务的时候不做任何操作。1当设为默认值1的时候,每...
    99+
    2024-04-02
  • mongodb配置
    安装说明系统环境:Centos-6.3安装软件:mongodb-linux-x86_64-2.2.2.tgz下载地址:http://www.mongodb.org/downloads安装机器:192.168...
    99+
    2024-04-02
  • windows7的最低配置和推荐配置
    下面是win7的最低配置和推荐电脑。 ...
    99+
    2023-06-03
    win7 配置要求 配置 推荐 windows7
  • IIS中如何安装配置PHP5.3配置
    小编给大家分享一下IIS中如何安装配置PHP5.3配置,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!IIS安装配置PHP5.3配置的方法:首先在IIS中启用CGI...
    99+
    2023-06-20
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作