Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 一对多连接的Postgresql Sequelize搜索_Node.js_Postgresql - Fatal编程技术网

Node.js 一对多连接的Postgresql Sequelize搜索

Node.js 一对多连接的Postgresql Sequelize搜索,node.js,postgresql,Node.js,Postgresql,postgresql新手,我正在使用node和Sequelize。我有一个包含表格、车辆和照片的数据库: ¦Vehicles: ¦ ¦ id 99 ¦ make Nissan ¦ model Micra ¦Photos: ¦ ¦ id 1 2 ¦ photoUrl xxx yyy ¦ photoOrder 1 2 ¦ vehicleId 99 99 在按车辆id搜索时,我希望得到如下输出: [

postgresql新手,我正在使用node和Sequelize。我有一个包含表格、车辆和照片的数据库:

¦Vehicles:
¦
¦ id     99
¦ make   Nissan
¦ model  Micra

¦Photos:
¦
¦ id            1      2
¦ photoUrl    xxx    yyy
¦ photoOrder    1      2
¦ vehicleId    99     99 
在按车辆id搜索时,我希望得到如下输出:

[
    {
        "id":99,
        "make":"Nisan",
        "model":"Micra",
        "photos":[
            {
                "photoOrder":1,
                "photoUrl":"xxx"
            },
            {
                "photoOrder":2,
                "photoUrl":"yyy"
            }
        ]
    }
]
我的联想是:

db.photos.belongsTo(db.vehicles);
db.vehicles.hasMany(db.photos);
我可以添加车辆和照片。检索车辆时,我会获得车辆信息,但没有照片:

export function findAll(req, res) {
    Vehicle.findAll()
        .then(data => {
            res.send(data);
        })
        .catch(err => {
           ...
        });
}

我的关联是否正确?如何实现所需的输出?

您可以通过车辆上的
getPhotos
功能访问照片。如果您想急切地加载它们,那么您需要执行以下操作

Vehicle.findAll({
  include: Photos
})

这里有文档

如果你总是想要照片。。你应该看看示波器。。。完美的非常感谢。我会好好看看望远镜。也谢谢。