首页 > 数据库 >PythonWeb项目开发(Django)在PyCharm定义模型并与mysql数据库绑定

PythonWeb项目开发(Django)在PyCharm定义模型并与mysql数据库绑定

时间:2024-11-02 11:19:37浏览次数:6  
标签:models auto py Django default mysql PyCharm now True

测试所用的django项目结构如下:

---------------------------------------------------------------------------------------------------------------------------------

定义模型(以创建好的blog应用为例):

重点操作对象1:之前创建应用(这里是blog文件夹)下面的models.py文件

重点操作对象2:django项目结构目录中的settings.py文件

重点操作对象3:pycharm中该项目命令行终端(pycharm的快捷键:alt +F12   ,pycharm打开终端自动进入相应的虚拟环境,very good)

---------------------------------------------------------------------------------------------------------------------------------

步骤1:在models.py文件里面创建模型类(这里以User类为例)

class User(models.Model):
    id = models.AutoField(primary_key=True)
    is_del = models.BooleanField("是否删除", default=False)
    # CharField:适用于存储如用户名、电子邮件地址、短描述等较短的文本。
    name = models.CharField("用户名", max_length=100)
    password = models.CharField("密码", max_length=100, default="")
    phone = models.CharField("电话号码", max_length=11, default="")
    last_update_date = models.DateField("最后一次修改的日期", auto_now=True)
    create_date = models.DateField("创建用户的日期", auto_now_add=True)
    last_update_time = models.TimeField("最后一次修改的时间", auto_now=True)
    create_time = models.TimeField("创建用户的时间", auto_now_add=True)
    last_update_date_time = models.DateTimeField("最后一次修改的日期与时间", auto_now=True)
    create_date_time = models.DateTimeField("创建用户的日期与时间", auto_now_add=True)
    email = models.EmailField("邮箱", max_length=100, default="")
    file_field = models.FileField("文件介绍", upload_to="files", default="")
    img = models.ImageField('用户头像', blank=True)
    student_id = models.IntegerField("学号", default=0, )
    # TextField:适用于存储如文章内容、用户评论、大段的描述等较长的文本。
    describe = models.TextField("详细信息")

    def __str__(self):
        return self.name

    class Meta:
        db_table = 'userinfo'

步骤二:注册应用,在settings.py中下图位置添加(如果之前创建应用(这里是blog)时,已经注册,请忽略此步骤:

INSTALLED_APPS = [
    #以下“...”表示省略本身系统自动生成的内容
    ...
    #下一行为时间添加的内容
    'blog'
]

步骤3:打开终端:依次输入以下命令:

#命令1
python manage.py makemigrations

#命令2
python manage.py migrate

如果在输入命令1之后报错提示:Did you install mysqlclient?
请直接下载mysqlclient即可,下载命令:pip install mysqlclient

补充(附加):执行步骤3后,就已经成功创建好如上的数据库了,如要换成mysql自己安装的数据库,需要执行步骤2时顺便在settings.py文件找到DATABASES={}修改默认数据库,如下:

DATABASES = {
    'default': {
        #将默认default里面的代码换成以下内容
        'ENGINE': 'django.db.backends.mysql',
        #数据库名
        'NAME': 'blog',
        #MySQL的用户名
        'USER': 'root',
        #对应的用户密码
        'PASSWORD': '123456',
        #以下一般不变
        'HOST': '127.0.0.1',
        'PORT': '3306',
        #以下是之前的默认代码,已注释
        # 'ENGINE': 'django.db.backends.sqlite3',
        # 'NAME': BASE_DIR / 'db.sqlite3',
    },
    
}

标签:models,auto,py,Django,default,mysql,PyCharm,now,True
From: https://blog.csdn.net/Dsx20224673/article/details/143418995

相关文章

  • JDBC连接mysql进行curd操作
    使用JDBC连接mysql数据库一.JDBC是什么JDBC(JavaDatabaseConnectivity)Java连接数据库的规范(标准),可以使用Java语言连接数据库完成CRUD操作。二.导入maven依赖<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId>......
  • 如何在 MySQL 中创建一个完整的数据库备份?
    在MySQL数据库中创建一个完整的数据库备份通常不是通过编程语言直接实现的,而是借助MySQL提供的命令行工具mysqldump来完成。作为Java开发者,我们可以编写脚本来调用这些工具,从而实现自动化备份。下面我们将详细介绍如何使用Java来调度mysqldump工具进行数据库备份。创建数据......
  • 基于django的在线购物商城推荐系统 python个性化购物商城推荐系统的设计与开发 爬虫
    基于django的在线购物商城推荐系统python个性化购物商城推荐系统的设计与开发爬虫排行榜可视化数据基于流行度的热点推荐平均加权混合推荐协同过滤推荐大数据机器学习深度学习OnlineShopRecommendPy一、项目简介1、开发工具和使用技术Pycharm、Python3及以上版......
  • django旅游攻略推荐系统-计算机毕业设计源码99889
    摘要:随着大数据技术的快速发展,旅游行业正逐渐意识到利用大数据分析来提供更精准和个性化的旅游攻略推荐的重要性。本研究旨在设计和开发一个基于大数据分析的旅游攻略推荐系统,以帮助旅行者在选择旅游目的地、规划行程和寻找相关信息时做出更明智的决策。首先,我们收集了大量的......
  • Mysql的行锁,改一行锁一行
    目录标题前言行级锁1.共享锁(SharedLock)2.排他锁(ExclusiveLock)行级锁中的死锁(DeadLock)现象行级锁虽好,但有时候会升级成表级锁第一种情况,当未命中索引时,行级锁会升级成表级锁。......
  • 面试官:通过Mysql查询的时候,为什么有时候即使查询一条数据也很慢呢?
    目录标题1.明明现在执行得很快,为什么还是会被慢日志所记录呢?一、flush数据(底层架构讲起)......
  • 一文搞懂JDBC全流程(含MySQL安装和JDK下载)
    前言:1.了解问题1:什么是JDBC?JDBC全称:JavaDatabaseConnectivity,即Java数据库连接JDBC是Java提供的一组独立于任何数据库管理系统的API。Java提供接口规范,由各个数据库厂商提供接口的实现,厂商提供的实现类封装成jar文件,也就是数据库驱动jar包。学习JDBC,充分体现了面向接口......
  • Java项目实战II基于Java+Spring Boot+MySQL的工程教育认证的计算机课程管理平台(源码+
    目录一、前言二、技术介绍三、系统实现四、文档参考五、核心代码六、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言随着工程教育认证的深入发展,对计算机课程......
  • Java项目实战II基于Java+Spring Boot+MySQL的植物健康系统(开发文档+数据库+源码)
    目录一、前言二、技术介绍三、系统实现四、文档参考五、核心代码六、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言基于Java、SpringBoot和MySQL的植物健康......
  • 零基础3分钟快速入门MYSQL关系数据库1
    MySQL的语法规范1.不区分大小写,但建议关键字大写,表名、列名小写2.每条命令最好用分号结尾3.每条命令根据需要,可以进行缩进或换行4.注释ctrl+/单行注释:#注释文字  单行注释:--注释文字  多行注释:/*注释文字*/1.安装mysql、安装navicat2.navicat连接mysql(1)打......