【发布时间】:2019-04-05 05:10:29
【问题描述】:
我目前正在构建一个 NodeJS express API 以与 ReactJS 前端一起运行。来自一切都是文档的 mongodb,我对如何从 SQL 收集数据有点迷茫。让我解释一下。
要构建一个使用 API Rest 的 ReactJS 应用程序,我需要在前端有正确的 Objects 结构。
以用户可以在比赛中下注的基本应用程序为例,我会这样做
TABLE users (
_id SERIAL PRIMARY KEY,
username varchar(255) UNIQUE,
password varchar(255)
);
TABLE matches (
_id SERIAL PRIMARY KEY,
EQA varchar(255), // These should be ids to teams but
EQB varchar(255), // we try to keep it simple
EQA_score INTEGER,
EQB_score INTEGER,
);
TABLE bets (
_id SERIAL PRIMARY KEY,
user_id INTEGER REFERENCES users(_id),
match_id INTEGER REFERENCES matches(_id),
EQA_bet INTEGER,
EQB_bet INTEGER,
);
然后要在 ReactJS 中显示预测的历史,使用这种结构的数据会非常简单:
{
username: 'Random name',
bets: [
{
EQA_bet: 1,
EQB_bet: 0,
match: {
EQA: 'Paris',
EQB: 'London',
EQA_score: 1,
EQB_score: 0,
}
},
{
...
}
]
}
要构建这个对象,我不知道什么是最好的:
- 一个查询用户、投注和比赛并在 JS 中构建我的对象
- 一个带有连接的查询,然后是一些长代码来构建我的对象
- 其他一些我还不知道的工具/策略
感谢您理解我的问题。这就是在前端没有一个平面对象来解释
【问题讨论】:
-
您正在寻找一个 SQL ORM。我使用过 Objection.js,我喜欢它。您需要的功能称为急切加载
标签: sql node.js postgresql