• 【毕业设计】后端实现——设计数据库并存储数据


    🌈据说,看我文章时 关注、点赞、收藏帅哥美女们 心情都会不自觉的好起来。

    前言:
    🧡作者简介:大家好我是 user_from_future ,意思是 “ 来自未来的用户 ” ,寓意着未来的自己一定很棒~
    ✨个人主页:点我直达,在这里肯定能找到你想要的~
    👍专栏介绍:个人记账分析系统 ,专门记录制作过程,每天进步一点点~

    想看往期历史文章,可以浏览此博文: 历史文章目录,后续所有文章发布都会同步更新此博文~

    人生苦短,我用python

    设计模型类

    这里采用djangoweb框架,好处就是数据库能自动创建,数据能自动写入,舒服!技术创造懒人 技术迎合需求。

    微信账单模型

    除了交易时间是日期类型,所以用 models.DateTimeField 类型,其他都用 models.CharField 类型:

    # _*_ coding:utf-8 _*_
    from django.db import models
    from django.contrib.auth.models import User
    
    # Create your models here.
    
    
    class Wechat(models.Model):
        trading_time = models.DateTimeField(null=True, blank=True, verbose_name='交易时间')
        transaction_type = models.CharField(null=True, blank=True, verbose_name='交易类型', max_length=8)
        other_trade = models.CharField(null=True, blank=True, verbose_name='交易对方', max_length=255)
        goods = models.CharField(null=True, blank=True, verbose_name='商品', max_length=255)
        in_out = models.CharField(null=True, blank=True, verbose_name='收/支', max_length=4)
        amount = models.CharField(null=True, blank=True, verbose_name='金额(元)', max_length=11)
        payment_method = models.CharField(null=True, blank=True, verbose_name='支付方式', max_length=22)
        current_status = models.CharField(null=True, blank=True, verbose_name='当前状态', max_length=10)
        transaction_order_number = models.CharField(blank=True, verbose_name='交易单号', max_length=255, primary_key=True)
        business_order_number = models.CharField(null=True, blank=True, verbose_name='商户单号', max_length=255)
        remarks = models.CharField(null=True, blank=True, verbose_name='备注', max_length=255)
        owner = models.ForeignKey(User, models.CASCADE)
    
        class Meta:
            verbose_name = '微信账单流水'
            verbose_name_plural = verbose_name
            db_table = 'wechat'
            ordering = ('-transaction_order_number',)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    支付宝账单模型

    和微信账单模型一样,除了交易时间是日期类型,所以用 models.DateTimeField 类型,其他都用 models.CharField 类型:

    # _*_ coding:utf-8 _*_
    from django.db import models
    from django.contrib.auth.models import User
    
    # Create your models here.
    
    
    class Alipay(models.Model):
        in_out = models.CharField(null=True, blank=True, verbose_name='收/支', max_length=4)
        trade_user = models.CharField(null=True, blank=True, verbose_name='交易对方', max_length=255)
        other_account = models.CharField(null=True, blank=True, verbose_name='对方账号', max_length=255)
        product_description = models.CharField(null=True, blank=True, verbose_name='商品说明', max_length=255)
        in_out_method = models.CharField(null=True, blank=True, verbose_name='收/付款方式', max_length=22)
        amount = models.CharField(null=True, blank=True, verbose_name='金额', max_length=11)
        trading_status = models.CharField(null=True, blank=True, verbose_name='交易状态', max_length=10)
        transactions_classification = models.CharField(null=True, blank=True, verbose_name='交易分类', max_length=8)
        transaction_order_number = models.CharField(blank=True, verbose_name='交易订单号', max_length=255, primary_key=True)
        business_order_number = models.CharField(null=True, blank=True, verbose_name='商家订单号', max_length=255)
        trading_time = models.DateTimeField(null=True, blank=True, verbose_name='交易时间')
        owner = models.ForeignKey(User, models.CASCADE)
    
        class Meta:
            verbose_name = '支付宝账单流水'
            verbose_name_plural = verbose_name
            db_table = 'alipay'
            ordering = ('-transaction_order_number',)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    用户设置模型

    # _*_ coding:utf-8 _*_
    from django.db import models
    from django.contrib.auth.models import User
    
    # Create your models here.
    
    
    class Setting(models.Model):
        name = models.CharField(verbose_name='姓名', max_length=10)
        sex = models.CharField(verbose_name='性别', max_length=2)
        heads = models.ImageField(verbose_name='头像')
        wx_rules = models.TextField(verbose_name='微信收支规则')
        zfb_rules = models.TextField(verbose_name='支付宝收支规则')
        last_ip = models.GenericIPAddressField(verbose_name='上次登录IP地址')
        owner = models.ForeignKey(User, models.CASCADE)
    
        class Meta:
            verbose_name = '用户设置'
            verbose_name_plural = verbose_name
            db_table = 'setting'
            ordering = ('-id',)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    执行数据库牵引

    python manage.py makemigrations
    python manage.py migrate
    
    • 1
    • 2

    在PyCharm中查看数据库信息

    View > Tool Windows > Database

    在这里插入图片描述

    Data Source > SQLite

    在这里插入图片描述

    选择 db.sqlite3 文件,看到缺少驱动文件就下载,等待下载完成

    在这里插入图片描述

    测试成功点击 OK 即可连接数据库

    在这里插入图片描述

  • 相关阅读:
    AIR32F103(四) 27倍频216MHz,CoreMark跑分测试
    .NET7 一个实用功能-中央包管理
    前端如何使用post下载文件(将用户勾选的数据导出、下载),以及下载window.open是预览的文件
    Java反射,动态代理。笔记
    【Python】给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。
    广义线性模型(GLM)及其应用
    Java刷题常用工具类(长时间更新)
    带大家走进熊猫烧香蠕虫病毒
    小波函数绘制(Python)
    【Spring系列】- 手写模拟Spring框架
  • 原文地址:https://blog.csdn.net/user_from_future/article/details/127818927