d0b5c6f670
Beispiel-Threads + Wortmeldungen für die Forum-Kategorien, bewusst getrennt von der Migration (Produktion startet leer). Idempotent über feste UUIDs + ON CONFLICT DO NOTHING; manuell einspielbar, DELETE-Block zum Entfernen. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
112 lines
6.4 KiB
SQL
112 lines
6.4 KiB
SQL
-- OPENBUREAU — OPTIONALER Demo-Inhalt fürs Forum (Dialog).
|
|
-- ─────────────────────────────────────────────────────────────────────────
|
|
-- NICHT Teil der Migration: bewusst getrennt von schema.sql, damit die
|
|
-- Produktion sauber bleibt. Nur bei Bedarf manuell einspielen, z.B.:
|
|
--
|
|
-- docker compose exec -T db \
|
|
-- psql -U supabase_admin -d postgres < db/seed-demo.sql
|
|
--
|
|
-- Idempotent: feste UUIDs + ON CONFLICT DO NOTHING → mehrfaches Einspielen
|
|
-- erzeugt keine Duplikate. Demo-Wortmeldungen haben user_id = NULL (keine
|
|
-- echten Konten); author_name/author_role sind nur Anzeigetext.
|
|
--
|
|
-- Wieder entfernen: siehe DELETE-Block ganz unten (auskommentiert).
|
|
-- ─────────────────────────────────────────────────────────────────────────
|
|
|
|
-- ── Threads ───────────────────────────────────────────────────────────────
|
|
insert into public.threads (id, forum_id, key, title, url, kind, author_name, created_at) values
|
|
('a1111111-1111-1111-1111-111111111101',
|
|
(select id from public.forums where slug = 'allgemein'),
|
|
't/a1111111-1111-1111-1111-111111111101',
|
|
'Willkommen im OPENBUREAU-Dialog',
|
|
'/dialog/?thread=t%2Fa1111111-1111-1111-1111-111111111101',
|
|
'forum', 'Karim', now() - interval '9 days'),
|
|
|
|
('a2222222-2222-2222-2222-222222222202',
|
|
(select id from public.forums where slug = 'projekte'),
|
|
't/a2222222-2222-2222-2222-222222222202',
|
|
'Altbausanierung Zürich — Materialwahl Innendämmung',
|
|
'/dialog/?thread=t%2Fa2222222-2222-2222-2222-222222222202',
|
|
'forum', 'Karim', now() - interval '6 days'),
|
|
|
|
('a3333333-3333-3333-3333-333333333303',
|
|
(select id from public.forums where slug = 'technik'),
|
|
't/a3333333-3333-3333-3333-333333333303',
|
|
'Hugo-Build-Zeiten bei großen Bildmengen',
|
|
'/dialog/?thread=t%2Fa3333333-3333-3333-3333-333333333303',
|
|
'forum', 'Mara', now() - interval '3 days'),
|
|
|
|
('a4444444-4444-4444-4444-444444444404',
|
|
(select id from public.forums where slug = 'off-topic'),
|
|
't/a4444444-4444-4444-4444-444444444404',
|
|
'Welches Architekturbuch hat euch geprägt?',
|
|
'/dialog/?thread=t%2Fa4444444-4444-4444-4444-444444444404',
|
|
'forum', 'Jonas', now() - interval '2 days')
|
|
on conflict (key) do nothing;
|
|
|
|
-- ── Wortmeldungen ─────────────────────────────────────────────────────────
|
|
-- parent_id verweist auf eine andere Wortmeldung (Antwort-Bezug).
|
|
insert into public.comments (id, thread, parent_id, author_name, author_role, body, created_at) values
|
|
-- Thread 1: Willkommen
|
|
('c1111111-0000-0000-0000-000000000001',
|
|
't/a1111111-1111-1111-1111-111111111101', null, 'Karim', 'Gründer',
|
|
'Hallo zusammen — dieser Bereich ist für den offenen Austausch rund ums Büro: Projekte, Methoden, Werkzeuge. Lest euch ein, schreibt mit.',
|
|
now() - interval '9 days'),
|
|
('c1111111-0000-0000-0000-000000000002',
|
|
't/a1111111-1111-1111-1111-111111111101',
|
|
'c1111111-0000-0000-0000-000000000001', 'Mara', 'Projektarchitektin',
|
|
'Schön, dass es losgeht. Gibt es eine Empfehlung, wie wir Projektdiskussionen von allgemeinem Plausch trennen?',
|
|
now() - interval '8 days'),
|
|
('c1111111-0000-0000-0000-000000000003',
|
|
't/a1111111-1111-1111-1111-111111111101',
|
|
'c1111111-0000-0000-0000-000000000002', 'Karim', 'Gründer',
|
|
'Genau dafür gibt es die Kategorie „Projekte". „Off-Topic" ist für alles andere.',
|
|
now() - interval '8 days'),
|
|
|
|
-- Thread 2: Innendämmung
|
|
('c2222222-0000-0000-0000-000000000001',
|
|
't/a2222222-2222-2222-2222-222222222202', null, 'Karim', 'Gründer',
|
|
'Beim Altbau an der Seestrasse steht die Innendämmung an. Kalziumsilikat oder mineralischer Dämmputz? Erfahrungen mit Feuchteverhalten?',
|
|
now() - interval '6 days'),
|
|
('c2222222-0000-0000-0000-000000000002',
|
|
't/a2222222-2222-2222-2222-222222222202',
|
|
'c2222222-0000-0000-0000-000000000001', 'Mara', 'Projektarchitektin',
|
|
'Kalziumsilikat ist diffusionsoffen und kapillaraktiv — bei den Bestandswänden dort würde ich das vorziehen. Wichtig ist die Detailausbildung an den Holzbalkenköpfen.',
|
|
now() - interval '5 days'),
|
|
('c2222222-0000-0000-0000-000000000003',
|
|
't/a2222222-2222-2222-2222-222222222202',
|
|
'c2222222-0000-0000-0000-000000000002', 'Jonas', 'Bauleiter',
|
|
'Plus eins für Kalziumsilikat. Ich hänge nächste Woche die hygrothermische Simulation an, dann sehen wir die Tauwasserbilanz.',
|
|
now() - interval '4 days'),
|
|
|
|
-- Thread 3: Hugo-Builds
|
|
('c3333333-0000-0000-0000-000000000001',
|
|
't/a3333333-3333-3333-3333-333333333303', null, 'Mara', 'Projektarchitektin',
|
|
'Seit die Projektgalerien dazugekommen sind, dauert der Build spürbar länger. Hat jemand die Bildverarbeitung schon optimiert?',
|
|
now() - interval '3 days'),
|
|
('c3333333-0000-0000-0000-000000000002',
|
|
't/a3333333-3333-3333-3333-333333333303',
|
|
'c3333333-0000-0000-0000-000000000001', 'Karim', 'Gründer',
|
|
'Hugo cached die Image-Resizes unter resources/. Solange der Ordner erhalten bleibt, werden nur neue Bilder neu gerechnet — das war bei uns der größte Hebel.',
|
|
now() - interval '2 days'),
|
|
|
|
-- Thread 4: Architekturbuch
|
|
('c4444444-0000-0000-0000-000000000001',
|
|
't/a4444444-4444-4444-4444-444444444404', null, 'Jonas', 'Bauleiter',
|
|
'Bei mir war es „Atmosphären" von Peter Zumthor — schmal, aber prägend. Was hat euch geformt?',
|
|
now() - interval '2 days'),
|
|
('c4444444-0000-0000-0000-000000000002',
|
|
't/a4444444-4444-4444-4444-444444444404',
|
|
'c4444444-0000-0000-0000-000000000001', 'Mara', 'Projektarchitektin',
|
|
'„Complexity and Contradiction" von Venturi — hat mein Verständnis von Fassaden komplett verschoben.',
|
|
now() - interval '1 day')
|
|
on conflict (id) do nothing;
|
|
|
|
-- ── Demo-Inhalt wieder entfernen (bei Bedarf auskommentieren) ──────────────
|
|
-- delete from public.comments where id::text like 'c_______-0000-0000-0000-%';
|
|
-- delete from public.threads where key in (
|
|
-- 't/a1111111-1111-1111-1111-111111111101',
|
|
-- 't/a2222222-2222-2222-2222-222222222202',
|
|
-- 't/a3333333-3333-3333-3333-333333333303',
|
|
-- 't/a4444444-4444-4444-4444-444444444404');
|