首页 > 数据库 >【项目实战】基于Python+Django+MySQL的自行车租赁系统(附完整源码)

【项目实战】基于Python+Django+MySQL的自行车租赁系统(附完整源码)

时间:2023-03-16 20:34:23浏览次数:57  
标签:verbose Python max Django models length 源码 CharField name

1、项目说明

基于python+Django+Mysql的自行车租赁系统项目实战

项目需要安装pycharm专业版以及MySQL环境(环境搭建和破解可以看我的B站里的视频有讲解)

  • 首先需要创建数据库数据库名字叫做 db_bike_rent
  • 运行sql导入数据或者也可以直接用命令生成(视频有讲解)
  • 需要安装一下下面的模块(如果运行提示有模块未安装,安装一下即可,命令同下,改一下模块名即可)

项目需要安装 Django、及其附带的其他一些模块
安装命令如下:

 

2、项目主要技术

  • python编程技术

  • mysql数据库技术

  • django框架技术

  • 前端技术

 

3、项目结构

  • WebSite 主程序(项目的配置文件、主路由)

  • Bike 用户操作模块(租还车)以及后台管理系统的注册实现

  • templates 前端页面

  • manage.py 程序的入口

 

4、项目主要功能

  • 用户登录、注册

  • 用户租车、还车

  • 金额计算

  • 管理员管理车辆、定价

 

5、部分源码

models.py

from django.db import models


class Person(models.Model):
    id = models.AutoField('序号', primary_key=True)
    PersonName = models.CharField('用户名', max_length=20)
    PersonPassWord = models.CharField('密码', max_length=20)
    PersonGender = models.CharField('性别', max_length=2)
    PersonPhone = models.CharField('联系电话', max_length=20)
    PersonStatus = models.CharField(max_length=2)
    AccountPayable = models.CharField(max_length=20)
    IsAdmin = models.FloatField()

    # 修改显示的表的名字
    class Meta:
        db_table = "person"
        # 给模型类起一个更可读的名字
        verbose_name = '用户'
        # 模型的复数形式
        verbose_name_plural = '用户信息表'

    # 作为外键显示的字段
    def __str__(self):
        return self.PersonName


class Bike(models.Model):
    id = models.AutoField('序号', primary_key=True)
    BikeType = models.CharField('类型', max_length=20)
    BikeStatus = models.IntegerField('状态', choices=((0, '空闲'), (1, '租出'), (2, '检修')))
    BikeUnitPrice = models.IntegerField('单价', max_length=20)

    # 修改显示的表的名字
    class Meta:
        db_table = "bike"
        # 给模型类起一个更可读的名字
        verbose_name = '自行车'
        # 模型的复数形式
        verbose_name_plural = '自行车信息表'

    # 作为外键显示的字段
    def __str__(self):
        return self.BikeType


class Order(models.Model):
    id = models.AutoField('序号', primary_key=True)
    OrderPersonID = models.ForeignKey(Person, on_delete=models.CASCADE, verbose_name="用户名")
    OrderBikeID = models.ForeignKey(Bike, on_delete=models.CASCADE, verbose_name="车辆类型")
    OrderStartTime = models.CharField('订单开始时间', max_length=30)
    OrderEndTime = models.CharField('订单结束时间', max_length=30)
    OrderAccountPayable = models.IntegerField('租金', max_length=20)

    # 修改显示的表的名字
    class Meta:
        db_table = "order"
        # 给模型类起一个更可读的名字
        verbose_name = '订单'
        # 模型的复数形式
        verbose_name_plural = '订单信息表'

    def __str__(self):
        return self.OrderPersonID.PersonName

 

6、运行截图

 

 

 

 

 

7、项目总结

本项目是一个非常适合学习练手的项目,对我们的Django框架技术以及开发经验的提升,完善简历提高技能都有有很大的帮助,推荐大家学习研究这个项目,搞懂其中的业务逻辑流程以及各个知识点非常关键。
 
项目资料截图:

资料获取地址:https://h5.m.taobao.com/awp/core/detail.htm?ft=t&id=696316790825
B站视频讲解地址:https://www.bilibili.com/video/BV1CW4y1L7R6/
 
注:其他问题请参看视频讲解,都有介绍,一定要认真看完哦!
代码编写、视频录制不易,感谢您的支持,祝您学习愉快!
 

避免走丢,记得关注哦

标签:verbose,Python,max,Django,models,length,源码,CharField,name
From: https://www.cnblogs.com/bhml/p/17224035.html

相关文章

  • 【项目实战】基于Python+Django+MySQL的在线投票系统(附完整源码)
    1、项目说明基于Python+Django+Mysql在线投票系统项目实战项目需要安装pycharm专业版以及MySQL环境(环境搭建和破解可以看我的B站里的视频有讲解)首先需要创建数据库数......
  • 【项目实战】基于Pthon+PyQt5的GUI点名程序(附完整源码)
    1、项目说明基于python+PyQt5的GUI点名程序项目实战项目需要安装pycharm社区版或专业版都可,以及项目所需的所有模块项目需要安装pyqt5、pywin32及其他一些模块安装命......
  • 【项目实战】基于Python+Django+MySQL的个人博客系统(附完整源码)
    1、项目说明基于python+Django+Mysql的个人博客系统项目实战项目需要安装pycharm专业版以及MySQL环境(环境搭建和破解可以看我的B站里的视频有讲解)首先需要创建数据库......
  • python爬虫基础教程
    爬虫介绍爬虫就是程序,是从互联网中,各个网站上爬取数据(能浏览到的网页才可以爬),做数据清洗,入库爬虫本质:模拟http请求,获取数据,入库网站/app>抓包我们日......
  • python中的hashlib模块
    md5是一种常见不可逆加密算法,使用简单,计算速度快,在很多场景下都会用到,比如:给用户上传的文件命名,数据库中保存的用户密码,下载文件后检验文件是否正确等。官网:https://docs.......
  • 使用几何光学实现空间相对定位(python+opencv)
    我从2019年3月份开始学习python,在有一定的基础后,我看到学校有一个物理实验竞赛:北京联合大学第十二届物理实验竞赛,其中有一个题目是空间定位,即利用物理原理,自行搭建实验......
  • 调用AI聊天机器人自动回复信息(Python)
    “人类正从IT时代走向DT时代”,随着移动互联网技术持续高速发展,海量数据计算存储、智能数据挖掘、低时延数据传送和可靠网络安全已经成为软硬件技术飞速发展的催化剂,也推......
  • 抓取王者荣耀英雄列表的爬虫笔记(python+requests)
    在开始这个内容之前,我们先来一张效果图:实现它,需要几个过程:调用王者荣耀助手的数据接口获取所有英雄的图片通过迭代,把所有图片转换成二进制数据流把这些数据导入MySQL数据库......
  • django返回文件(无论什么格式的)给前端
    读取文件方法:defread_file(file_name,chunk_size=512):withopen(file_name,"rb")asf:whileTrue:c=f.read(chunk_size)......
  • Python startswith()和endswith()方法
    startswith()方法startswith()方法用于检索字符串是否以指定字符串开头,如果是返回True;反之返回False。endswith()方法endswith()方法用于检索字符串是否以指定字符......