我使用Ali的开源Project Egg来制作模板节点中间开发。
简而言之,这是在底端和前端进行接口级别开发层。
由于项目数据的来源非常复杂,因此需要将不同的数据库用于数据存储,因此我需要在配置中连接MySQL,MongoDB和Postgres。
鸡蛋创建模板仍然非常方便。可以在官方网站上看到的儿童鞋。
但是我更喜欢开发发展的项目环境。这可以清楚地消除冗余代码,或者自由使用熟悉的配置。如果有问题,您可以快速阅读并定位。如何实现。
根据蛋的官方文件,创建以下项目目录
$ npm i鸡蛋 - 序列 -
$ npm i鸡蛋-Mongoose -S
$ npm i mysql2 -s
$ npm i pg -s
这里
以上是最基本的包装安装,因此我们的项目非常令人耳目一新。
然后,您可以开心地写错误。
所有配置都在进行中。当然,如果要使用第三方软件包,则需要在中间注册:
在我们注册插件后,可以在项目中引用和使用安装袋,但是我们还需要指定一些最基本的配置,例如链接每个数据库帐户和密码。该代码的这一部分实际上是配置类,因此将其放下。
首先是链接MongoDB的配置
然后添加续集的相关配置以链接mysql和Postgres。这两个数据库的配置基本相同
这里有两点要特别注意
数据库模型实际上是每个表的描述文件。例如,我有一个用户表,其模型可能是这样:
问题是我有三个数据库,每个库都有许多表。我们不能为每个表授课模型。它会精疲力尽和愚蠢。因此,我使用插头-in
npm install -g蛋 - 续集-Auto npm install -G mysql2
现在,使用此命令生成用户表的模型
Egg- semelize-自动-o“ https://www.shouxicto.com/article/modelsql” -h主机-D db -u用户名-P端口用户
如果要生成MySQL中所有表的模型
Egg- semeelize-自动-o“ https://www.shouxicto.com/article/modelsql” -h主机-D db -u用户名-p port -p port -e mysql
这是一些参数说明
-H-H-host数据库的IP地址[必需] -D-DATABASE数据库名称[必需] -U-用户name-x-pass密码-P-PORT端口-C-Config配置文件[quiendererjson file] -O--O--输出目标文件夹t,-tableEnames数据表名称 - e-dialect数据库类型:Postgres,mysql,sqlite ..ET为了生成上面数据表的描述文件,项目目录应该像这样,描述文件的描述文件数据库。
以Postgres为例。LET首先了解三张桌子之间的关系:X桌是汽车品牌表,Y桌是品牌国家的其他桌子,Z表是品牌模型表。如下所示。
在这里,您可以清楚地看到,子细分段对应于该国的名称,子细分段对应于品牌名称,子段对应于品牌下的不同汽车
因此,该协会有以下关系
那么如何建立这三张桌子?
这需要一种调用的方法,我将代码直接放置,并且注释中要注意的地方。
我在这里遇到了一个问题,也就是说,我无法阅读X,Y和Z的描述,然后我访问了官方网站,官方网站是:
然后我转身发现有一个:
好吧,这是我的唐·图,离开!
因此,它的规则就是这样:
为了理解此对应关系,确定了表格的形式。
现在我们尝试实现一个接口
添加get请求:
然后在中间写入此请求的逻辑,然后将车辆的全部信息返回前端。
这样的简单查询车辆全部信息的代码已经完成。测试它。
NPM运行服务器
curl -xget'127.0.0.1:7001/api/all_car_list
作者:阳光同学