From 2c90f62a1e815628e5ea0aa0abb90d73dc4d7274 Mon Sep 17 00:00:00 2001 From: TheFlow Date: Fri, 24 Oct 2025 09:55:51 +1300 Subject: [PATCH] fix(submissions): handle null blogPostId in populate query - Changed populate to use options object with strictPopulate: false - Allows submissions without blogPostId (standalone packages) to be returned - Fixes 500 error on /api/submissions endpoint - Le Monde package should now be visible in UI after server restart --- src/controllers/submissions.controller.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/controllers/submissions.controller.js b/src/controllers/submissions.controller.js index 3a19d2e5..f2452e8c 100644 --- a/src/controllers/submissions.controller.js +++ b/src/controllers/submissions.controller.js @@ -82,7 +82,11 @@ async function getSubmissions(req, res) { if (publicationId) query.publicationId = publicationId; const submissions = await SubmissionTracking.find(query) - .populate('blogPostId', 'title slug') + .populate({ + path: 'blogPostId', + select: 'title slug', + options: { strictPopulate: false } // Allow null blogPostId + }) .populate('createdBy', 'email') .sort({ submittedAt: -1, createdAt: -1 }) .limit(parseInt(limit, 10))