← back to Wallco Ai
etsy-tag endpoint: drop nonexistent 'title' column (view has ai_title only)
3fc593c5c845e2e6b40ec6075716cd7995535463 · 2026-05-28 06:44:35 -0700 · Steve Abrams
Files touched
Diff
commit 3fc593c5c845e2e6b40ec6075716cd7995535463
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Thu May 28 06:44:35 2026 -0700
etsy-tag endpoint: drop nonexistent 'title' column (view has ai_title only)
---
server.js | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/server.js b/server.js
index 582be6f..3f957fe 100644
--- a/server.js
+++ b/server.js
@@ -17929,7 +17929,8 @@ app.post('/api/design/:id/etsy-tag', requireAdmin, express.json({ limit: '4kb' }
const id = parseInt(req.params.id, 10);
if (!Number.isFinite(id) || id < 1) return res.status(400).json({ error: 'bad id' });
try {
- const raw = psqlQuery(`SELECT row_to_json(t) FROM (SELECT id, COALESCE(ai_title, title, '') AS title, dig_number, local_path, COALESCE(tags, ARRAY[]::text[]) AS tags FROM spoon_all_designs WHERE id=${id}) t;`);
+ // spoon_all_designs view has ai_title but NOT title — match the actual schema
+ const raw = psqlQuery(`SELECT row_to_json(t) FROM (SELECT id, COALESCE(ai_title, '') AS title, dig_number, local_path, COALESCE(tags, ARRAY[]::text[]) AS tags FROM spoon_all_designs WHERE id=${id}) t;`);
if (!raw || raw.length < 3) return res.status(404).json({ error: 'design not found' });
const row = JSON.parse(raw);
const already = Array.isArray(row.tags) && row.tags.includes('etsy-digital-file');
← 3ed1a19 design page: Sell on Etsy (digital) button → tags etsy-digit
·
back to Wallco Ai
·
cactus-curator: 'By-base view' toggle — 1 pattern + thumbs o e9fe6eb →