Problem mit Ausgabe von Datenbankwerten im Formulator

Django, Flask, Bottle, WSGI, CGI…
Antworten
pte
User
Beiträge: 3
Registriert: Donnerstag 1. März 2007, 21:50

Freitag 2. März 2007, 11:50

Hallo liebe Mitglieder des Python Forums,

mein Name ist Petra Tegtmeyer und ich habe mich nach mehr als vierjähriger Pause entschlossen, wieder ein Projekt mit Zope/Plone zu realisieren. Die Welt stand in dieser Zeit nicht still und die Technik hat sich in dieser Zeit rasant entwickelt. Und da mein Wiedereinstieg ja auch nicht so langweilig werden sollte, habe ich mich sogleich auf Page Templates und den Formulator gestürzt. Leider habe ich vor allem ein Problem mit dem Formulator. Ein Formular zu erstellen ist kein Hexenwerk aber leider hat sich die Ausgabe von Werten, die ich vor dem Aufruf des Formulars aus einer Datenbank hole und in eine Variable (Liste) ausgebe als schier unlösbares Problem herausgestellt.
Ich habe dazu im Default-Field im Edit-Tab des Formulars versucht, auf einen Wert dieser Liste zuzugreifen, bekomme ich immer eine Fehlermeldung, die besagt, dass die Variable nicht vorhanden ist. Leider habe ich nirgendwo ein Beispiel finden können, das mir da weiterhilft.

Wer kann mir helfen?

Vielen Dank im Voraus.
Petra Tegtmeyer
pte
User
Beiträge: 3
Registriert: Donnerstag 1. März 2007, 21:50

Freitag 2. März 2007, 21:59

Hallo,

ich habe mein Problem jetzt selbst gelöst bekommen. Es war wohl ein absoluter Anfängerfehler. Man muss nur den Variablenwert im richtigen Moment in den Request schreiben um ihn dann als Vorgabe im Formular zu haben.
Vielen Dank an alle, die sich bereits für mich den Kopf zerbrochen haben.

Petra Tegtmeyer
HerbertN
User
Beiträge: 24
Registriert: Mittwoch 14. Februar 2007, 11:29

Montag 5. März 2007, 15:24

Du kannst dir auch das Produkt PloneFormGen anschauen - damit sind auch komplexe Formulare kein Hexenwerk - und du musst quasi nichts selbst programmieren.
Benutzeravatar
Käptn Haddock
User
Beiträge: 168
Registriert: Freitag 24. März 2006, 14:27

Dienstag 6. März 2007, 13:35

HerbertN hat geschrieben:Du kannst dir auch das Produkt PloneFormGen anschauen - damit sind auch komplexe Formulare kein Hexenwerk - und du musst quasi nichts selbst programmieren.
Danke für den Tip 8)
You made my day!

Gruß Uwe
---------------------------------
have a lot of fun!
HerbertN
User
Beiträge: 24
Registriert: Mittwoch 14. Februar 2007, 11:29

Mittwoch 7. März 2007, 23:04

Freut mich :)

Der Maintainer ist recht nett und aktiv! Er hat sogar extra auf meine Anfrage hin die FAQ um folgenden Punkt erweitert:
http://plone.org/products/ploneformgen/ ... rom-adress
Benutzeravatar
Käptn Haddock
User
Beiträge: 168
Registriert: Freitag 24. März 2006, 14:27

Donnerstag 8. März 2007, 11:30

Die Doku-Seite dort ist eh gut gemacht. Man muß das echt mal loben :)

Gruß Uwe
---------------------------------
have a lot of fun!
pte
User
Beiträge: 3
Registriert: Donnerstag 1. März 2007, 21:50

Freitag 9. März 2007, 10:40

Hallo Herbert, hallo Uwe,

herzlichen Dank nochmal für den Tip. Wie hat Uwe gesagt? You made my day, wenn nicht noch einiges mehr.

Ich habe das Tool für eine Datenbankanbindung verwendet und bin dabei auf die folgende Besonderheit gestoßen:

Ich verwende für Variablen/Feldnamen gern Groß und Kleinschreibung, für die bessere Lesbarkeit ohne Unter- oder Bindestriche. Etwa so: getNameByID oder KoID. Leider wandelt PloneFormGen jede Widget-ID in Keinbuchstaben um. Auch das Umbenennen per Rename ändert dies nur optisch. Erst wenn man in jedes einzelne Widget reingeht und sowohl im Bearbeiten-Tab als auch im Anzeigen-Tab einmal auf bestätigen/speichern geklickt hat, wird die Änderung wirklich übernommen. Kontrollieren kann man das nur, wenn man das Formular aufruft und sich in der Fehlermeldung den Request genau ansieht. Da sieht man die wirklich verwendeten From-Variablen.
Habe ich da eine Grundeinstellung irgendwo falsch gesetzt oder kann man die automatische Kleinschreibung bei ID's über PloneFormGen nicht ausschalten und warum werden Änderungen an den ID per rename nicht wirklich übernommen?
Wisst Ihr darauf eine Antwort?

Viele Grüße
Petra
Antworten