diff options
| author | Santo Cariotti <santo@dcariotti.me> | 2022-09-18 12:55:26 +0000 |
|---|---|---|
| committer | Santo Cariotti <santo@dcariotti.me> | 2022-09-18 12:55:26 +0000 |
| commit | 0343c9b700c145d3f76b6fffc0c3141e516a78c9 (patch) | |
| tree | 52513c52e6fb3f37183ed23106cead484eb43b32 /src/models | |
| parent | fa7ca7224a16a1106c7a2fb30e14616ab283c177 (diff) | |
Fix aggregator for model with no uploads
Diffstat (limited to 'src/models')
| -rw-r--r-- | src/models/model.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/models/model.rs b/src/models/model.rs index cf539c9..f8e7057 100644 --- a/src/models/model.rs +++ b/src/models/model.rs @@ -130,10 +130,10 @@ impl Model { SELECT models.*, json_build_object('id', users.id, 'email', users.email, 'username', users.username, 'is_staff', users.is_staff) as author, - json_agg(uploads.*) as uploads + json_agg(uploads.*) filter (where uploads.* is not null) as uploads FROM models JOIN users ON users.id = models.author_id - JOIN uploads ON uploads.model_id = models.id + LEFT JOIN uploads ON uploads.model_id = models.id WHERE models.id = $1 GROUP BY models.id, users.id "#) @@ -152,10 +152,10 @@ impl Model { SELECT models.*, json_build_object('id', users.id, 'email', users.email, 'username', users.username, 'is_staff', users.is_staff) as author, - json_agg(uploads.*) as uploads + json_agg(uploads.*) filter (where uploads.* is not null) as uploads FROM models JOIN users ON users.id = models.author_id - JOIN uploads ON uploads.model_id = models.id + LEFT JOIN uploads ON uploads.model_id = models.id GROUP BY models.id, users.id LIMIT $1 OFFSET $2 "#) |
