我有3个Mysql表,一个包含 vendor 列表的 vendor 表,一个包含这些 vendor 在商店中拥有的类别列表的类别表,类别表使用辅助键(vendor_id)链接到 vendor 表),我还有一个产品表,其中包含这些类别中的所有产品,并且它使用外键(category_id)链接到类别表。我如何编写一个 NodeJs/express 路由来返回一个如下所示的 json 对象,
{
"id": 1,
"vendor": "Food place",
"category": "Chicken"[
{
"id": "1,
"name": "Fried chicken",
"price": "100"
},
{
"id": "2,
"name": "Soup Chicken",
"price": "150"
}
}
因此 json 对象返回 vendor 他们存储的所有类别,以及类别内所有属于这些类别的产品
表格看起来与此类似 vendor 表:
+----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(255) | NO | | NULL | |
| category | varchar(255) | NO | | NULL | |
+----------+--------------+------+-----+---------+----------------+
类别表:
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(20) | YES | | NULL | |
| vendor_id | int(11) | NO | MUL | NULL | |
+-----------+-------------+------+-----+---------+----------------+
产品表:
+-----------------+---------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+---------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| price | decimal(10,0) | NO | | NULL | |
| name | varchar(255) | YES | | NULL | |
| category_id | int(11) | YES | MUL | NULL | |
+-----------------+---------------+------+-----+---------+----------------+
最佳答案
路线
export const route = (router: any) => {
return router.get('/your_route_here', (req: any, res: any) => {
// do your logic here
});
}
export default route;
关于javascript - 来自 NodeJs 和 MySql 的嵌套 Json 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58432229/