From 625efc3993a403934f66a932f9dde176e1588565 Mon Sep 17 00:00:00 2001 From: Hans Puettmann Date: Sun, 24 May 2026 19:25:25 +0200 Subject: [PATCH] L1: deutsche P2S-Anleitung als Ressource hinterlegt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Herb-Hinweis: https://wiki.bambulab.com/de/p2s/manual/p2s-intro ist Bambus offizielle deutsche Anleitung fuer den P2S, passt sinngemaess auch fuer unsere P1S + X1C (alle drei geschlossen, gleiches Layout). Der A1 mini ist anders und braucht eigene Quelle. - seed.py: aufgabe_md von L1 enthaelt den Link - migrations/2026-05-24_l1_p2s_link.py: idempotenter Update fuer bestehende DB-Stände, ergaenzt nur wenn Link noch nicht drin - docs/lektion-L1-drucker-kennenlernen.md: Sektion "Externe Ressourcen" ergaenzt mit beiden Links (Academy + P2S-Wiki) --- docs/lektion-L1-drucker-kennenlernen.md | 7 ++++ migrations/2026-05-24_l1_p2s_link.py | 52 +++++++++++++++++++++++++ seed.py | 6 ++- 3 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 migrations/2026-05-24_l1_p2s_link.py diff --git a/docs/lektion-L1-drucker-kennenlernen.md b/docs/lektion-L1-drucker-kennenlernen.md index 8a540da..4d4862f 100644 --- a/docs/lektion-L1-drucker-kennenlernen.md +++ b/docs/lektion-L1-drucker-kennenlernen.md @@ -34,6 +34,13 @@ Die SuS können: - Buchung des Test-Drucks als ersten [[slotsystem|Slot]] (mit Herb-Anleitung). - Erst-Druckauftrag als ersten Eintrag in der eigenen [[datenmodell#druckauftrag|Auftrags-Liste]]. +## Externe Ressourcen (in DB als Link hinterlegt) + +- **Bambu Academy** (englisch): https://bambulab.com/en/support/academy — kostenloser Kurs mit Zertifikat, Drucker-spezifisch. +- **P2S-Anleitung auf Deutsch** (Bambu Wiki): https://wiki.bambulab.com/de/p2s/manual/p2s-intro — passt sinngemäß auch für P1S/X1C (gleicher Aufbau, geschlossenes Gehäuse). Für den A1 mini ist sie nicht passend — der hat anderes Layout (offen) und eigene Anleitung. + +Beide Links sind in der DB für L1 hinterlegt und werden auf `/lektion/1` als Klick-Buttons gezeigt. Migration: `migrations/2026-05-24_l1_p2s_link.py`. + ## TODO mit Markus - [ ] Welches **Test-Modell** als "garantierter Erfolg"? diff --git a/migrations/2026-05-24_l1_p2s_link.py b/migrations/2026-05-24_l1_p2s_link.py new file mode 100644 index 0000000..3791a40 --- /dev/null +++ b/migrations/2026-05-24_l1_p2s_link.py @@ -0,0 +1,52 @@ +"""Migration 2026-05-24: L1 bekommt Hinweis auf die deutsche P2S-Anleitung. + +Hintergrund: Herb hat darauf hingewiesen, dass es auf + https://wiki.bambulab.com/de/p2s/manual/p2s-intro +eine deutsche Anleitung speziell fuer unseren P2S gibt. Da 3 unserer +4 Drucker P1S/X1C/P2S sind und die P2S-Anleitung am aktuellsten ist, +binden wir den Link in L1 ein. + +Idempotent: Update wird nur ausgefuehrt, wenn der Link noch nicht im +aufgabe_md drin ist. +""" +import sys +from pathlib import Path + +sys.path.insert(0, str(Path(__file__).resolve().parent.parent)) +from database import get_db + + +P2S_LINK_DE = "https://wiki.bambulab.com/de/p2s/manual/p2s-intro" +P2S_HINWEIS = ( + "\n\n**Anleitung speziell fuer unsere geschlossenen Drucker (Deutsch):** " + f"<{P2S_LINK_DE}>\n" + "Die P2S-Anleitung passt sinngemaess auch fuer P1S/X1C, " + "der A1 mini ist ein anderer Drucker (offenes Gehaeuse — Haende weg vom Hotend!)." +) + + +def main(): + conn = get_db() + row = conn.execute( + "SELECT aufgabe_md FROM lektion WHERE nummer = 1" + ).fetchone() + if not row: + print("[migration] L1 noch nicht in DB — Skip (seed.py legt es spaeter mit Hinweis an).") + conn.close() + return + if P2S_LINK_DE in (row["aufgabe_md"] or ""): + print("[migration] L1 enthaelt P2S-Link bereits — nichts zu tun.") + conn.close() + return + neu = (row["aufgabe_md"] or "") + P2S_HINWEIS + conn.execute( + "UPDATE lektion SET aufgabe_md = ? WHERE nummer = 1", + (neu,) + ) + conn.commit() + conn.close() + print(f"[migration] L1 aufgabe_md um P2S-Link ergaenzt ({len(P2S_HINWEIS)} Zeichen).") + + +if __name__ == "__main__": + main() diff --git a/seed.py b/seed.py index b2dd66e..4364cb9 100644 --- a/seed.py +++ b/seed.py @@ -66,7 +66,11 @@ def seed_lektionen(): "- Dein erster Druck mit einem vorbereiteten Modell.\n\n" "**Aufgabe:** Lass dir vom Lehrer ein vorbereitetes Modell zeigen, " "starte den Druck, beobachte die ersten Schichten.\n\n" - "*Inhalt wird mit Markus weiter ausgearbeitet.*", + "**Anleitung speziell fuer unsere geschlossenen Drucker (Deutsch):** " + "\n" + "Die P2S-Anleitung passt sinngemaess auch fuer P1S/X1C, " + "der A1 mini ist ein anderer Drucker (offenes Gehaeuse — Haende weg vom Hotend!).\n\n" + "*Weitere Inhalte werden mit Markus ausgearbeitet.*", "Frag den Lehrer, wenn du irgendwas nicht verstehst — Sicherheit geht vor.", "https://bambulab.com/en/support/academy"), (2, "Fremdes Modell waehlen + drucken",