我们已经准备好了,你呢?

2024我们与您携手共赢,助您领跑移动端创新增长!

  一、概述

  本文主要介绍个人如何一步一步搭建属于自己的车型数据库小程序。主要包含如下内容:

  1. 搭建车型数据库;

  2.搭建车型数据库model;

  3.创建车型数据库接口API;

  4.搭建小程序;

  5.API与小程序部署;

  本文涉及的技术栈:MySQL、Python、Peewee、FastAPI、Uni-app、小米球Ngrok地址映射;

  二、技术实现;

  1. 搭建车型数据库;

  本文假设本地电脑已经按照MySQL,搭建车型数据库的前提是需要获取到车型数据库,数据库例子可以在百度云下载:链接: 提取码: yc4e

  例子截图如下:

  使用数据库可视化软件Navicat可以导入文件夹en_mysql的数据库(假设创建数据库名称car_db),共三个表,分为品牌表、车系表、车型配置表;这样就搭建好车型数据库了;

  2.搭建车型数据库model

  使用Python库Peewee搭建数据库model,peewee是一个非常简洁的ORM库,支持sqlite、mysql、postgresql等数据库,文档路径:

  使用方法类似于Django 自带的ORM;Peewee比较方便的是可以通过已有数据库自动生成数据库模型;通过以下命令可以生成car_db的三个表的模型。

  python -m pwiz -u 'root' -P 'password' -e mysql car_db >models.py

  具体使用方法可以参考一下链接或者自行搜索:

  执行以上命令后,会在命令路径自动生成文档models.py,里面代码如下面截图(生成model后,尽量不要手动修改,因为如果你再重新生成,文件又重新做了,修改内容就无法保留):

  ?

  生成模型后就可以使用模型操作数据库了(如查询、筛选数据),具体操作请参考上面文档;

  3.创建车型数据库接口API

  使用Python库FastAPI搭建数据库的API接口,有了API接口,就可以通过网路访问查询数据库的数据了。FastAPI是一个非常方便API框架,官网的介绍如下:

  ?

  文档路径:

  它可以通过简单的几行代码,就可以搭建API接口,类似于Flask。本人的部分代码供参考:

数据库小软件开发(一步一步搭建车型数据库小程序)

  # -*- coding: utf-8 -*-from fastapi import FastAPIfrom fastapi.middleware.cors import CORSMiddlewarefrom model import ConfigBrandEn,ConfigSeriesEn,ConfigCarEn,ColNameEnToCnapp = FastAPI()app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"],)@app.get("/config/brands")def get_brands(): brands = ConfigBrandEn.select().order_by(ConfigBrandEn.p_shouzimu, ConfigBrandEn.p_pinpai) result_list = [] the_group = [] for b in brands: if not b.__data__["p_shouzimu"] in the_group: the_group.append(b.__data__["p_shouzimu"]) result_list.append({"show_group":1,"show_list":0,"p_shouzimu":b.__data__["p_shouzimu"]}) b.__data__["show_list"] = 1 b.__data__["show_group"] = 0 result_list.append(b.__data__) return result_list@app.get("/config/getseries/{brand_id}")def get_series(brand_id: int): the_series = ConfigSeriesEn.select().where(ConfigSeriesEn.p_pinpai_id==brand_id).order_by(ConfigSeriesEn.p_changshang.desc(), ConfigSeriesEn.p_chexi) result_list = [] the_group = [] for b in the_series: if not b.__data__["p_changshang"] in the_group: the_group.append(b.__data__["p_changshang"]) result_list.append({"show_group":1,"show_list":0,"p_changshang":b.__data__["p_changshang"]}) b.__data__["show_list"] = 1 b.__data__["show_group"] = 0 result_list.append(b.__data__) return result_list

  4.搭建小程序

  小程序采用Uni-app进行实现,主要是实现品牌页、车系页、车型页、配置页的简单页面,如需要更加丰富的功能,可以自行添加;

  Uni-app是可以跨多端的Vue框架,一次编码可以实现H5、APP、小程序(微信、头条等)的代码;官网:

  本人做的页面效果如下,代码编写可以参考官网文档进行学习。

  ?

  ?

  5.API与小程序部署

  部署的原理下图:

  ?

  小程序的部署

  使用“微信开发者工具”进行部署,部署方法网络上有很多教程,在Uni-app的Hbuild X 编写好代码后,可以生成微信小程序代码,并打开微信开发者工具进行调试部署;

  部署需要在微信小程序官网上注册,官网注册链接:微信小程序文档链接:注意微信小程序是需要采用HTTPS请求的;

  Ngork代理

  Ngork代理的作用是本地电脑可以通过外网访问FastAPI的接口,从而查询到车型数据库的数据;Ngork推荐采用“小米球Ngrok”,网址:

  通过注册账号,开通通道,就可以拥有专用的本地访问的网址,通过对应的port端口就可以与FastAPI关联;

  FastAPI启动服务的命令:

  uvicorn main:app --reload --port 8087

  只要Ngork的配置文件“ngrok.conf”的通道设定与FastAPI一致port (如8087)就可以监听了;我的设置请参考:

  ?

  Ngork的启动命令,官网有介绍:

  ./ngrok -log=ngrok.log -config ngrok.conf start httptun httpstun

  三、总结

  以上就是本人搭建车型数据库小程序的一点经验分享,希望对大家有帮助;

我们凭借多年的APP小程序开发经验,坚持以“个性定制 源码交付 独立部署 满意为止”为宗旨,累计为5000多家客户提供品质服务,得到了客户的一致好评。即刻开启你的小程序/APP,帮您轻松抢占千亿流量红利,助您轻松获客!
立即咨询: 13716188458 / 18588225959,助您抢占市场先机。项目经理在线

我们已经准备好了,你呢?

2024我们与您携手共赢,助您领跑移动端创新增长

售前咨询
咨询电话

13716188458

18588225959

在线留言
扫码加微信
微信
在线留言
* 请输入姓名
* 请输入有效联系方式
请输入您的需求:
* 请输入需求
提交成功