Deutsche Zope User Group
Gast 3 Benutzer online
DZUG-News

Abracadabra HowTo Teil 1 von 3

Besser als ZClasses! Abracadabra HowTo f�r Dummies und Blinde

Updated 09-02-2004: Teil 3 ab Step 14a hinzugefügt
Info: 16-09-2003: schreibe demnaechst das HowTo fuer ZPT um. Statt 1000 DTML-Methoden, dann nur noch EIN ZPT und ein Pythonscript. Starte damit voraussichtlich im Dezember. Einfach wieder vorbei schauen.
Updated 15-01-2003: Teil 2 Step 24 Fehler im Code korrigiert
Updated 04-10-2002: Teil 2 am Ende zugefuegt
Updated 13-09-2002: Erklaerungen am Ende zugefuegt



Anmerkungen, Probleme?
dann E-Mail an:

achja, und wer rechtschreibfehler findet darf sie behalten oder mir schicken. ich sammel sowas ...


SPRUCH DES ANFANGS

O-Ton sascha__:
"PHP ist die Folter der Schulungen
zum Web-Bla-Bla-Spezial-Spezialisten"




Abracadabra HOWTO f�r Dummies und Blinde



Hallo, ich bin Henriette, Alias |Henni|. Durch Maik und seinem Abracadabra Object bin ich im Verstaendnis Zope naeher gekommen. Ein Grund ein Howto fuer Begriffsstutzige zu schreiben. Es lohnt sich Abracadabra kapiert zu haben!

  • Anforderung: Ich wollte meine Adressen sortieren. Dabei habe ich die Anforderung, die Adressen zu kategorisieren.

    So etwas wie: "Zeige mir alle Adressen der Leute von der Arbeit an" oder "maile an alle aus dem Gesangsverein" (Nein, ich bin in keinem aber ist doch ein sch�nes Wort? :-)

    Ich weiss, ein guter Email-Client w�rde mir das auch geben, ich will das aber f�r's Intranet umsetzen und aktuell an EINER Stelle pflegen, so dass der Mitarbeiter immer auf den aktuellen Stand clicken kann, wenn er einer Gruppe eMailen m�chte...)

    Als ich meine Frage nach einem evtl. bereits vorhandenem Zope-Product ver�ffentlichte bekam ich Antwort von Maik, ich solle sein Abracadabra Object daf�r nehmen.

  • Spezieller Dank geht hiermit an Maik, und seine unendliche Geduld! Der mir in stundenlanger Hilfe (online (ich liebe das irc) und telefonisch) auf meine vielen Fragen Antwort gab und mir die Funktion seines Produkts klarmachen konnte.
    Zum Dank und f�r den R�ckfluss zu einer wunderbaren Zope-Community, dieses Howto. Ich hoffe damit Newbies zu erreichen, die auch nicht aufgeben wollen und an Zope glauben smile

  • Ich empfehle nachfolgende Schritte einfach mal durchzuspielen...
    ...am Ende ist schon einiges klarer. Versprochen :-) ach ja: Gross- und Kleinschreibung ist wichtig und zu beachten
    Los gehts!



Step 1

    Du hast Zope installiert ( siehe InstallationsHOWTO fuer Debian) und das Produkt AbracadabraObject installiert, dich eingeloggt...
    ...und befindest dich im ZMI (Zope Management Interface)

  • suche in dem Men� "Folder" aus und lege den Folder daten an (Add).
  • clicke deinen neuen Ordner daten an und erzeuge in ihm einen weiteren Ordner Namens anschriften






  • ...und geh anschliessend in den Ordner anschriften (anclicken)


Step 2

    Du solltest jetzt der Ansicht "../daten/anschriften" sein

  • click auf den Reiter oben im Men� "Properties" (Eigenschaften)



Step 3

    In der Property-Ansicht des Ordners "../daten/anschriften" legen wir eine weitere Eigenschaft an:

  • Name ist groups_ <-- ja mit Unterstrich
  • Type ist lines
  • Value leer lassen und "Add"



Step 4

    In dem neu erstellten Property (Eigenschaft) gibst du jetzt die spaeteren Sortierkreterien ein

  • GruppeA
    GruppeB
    GruppeC
    GruppeD
  • dann noch ein: save changes
  • und zurueck auf den Reiter im Menue: "Contents"



Step 5

    Wir sind wieder im "Contents"-Reiter des Ordners "..daten/anschriften" und

  • ..legen einen weiteren Ordner an




Step 6

    Die uns inzwischen bekannte "Add Folder Eingabe" erscheint...

  • Id (Name des Ordners): standard_object_folder
  • und "Add" ;-)
  • dann gehe in den standard_object_folder (click...)


  • und lege ein DTML_Document an

  • mit der ID "contact"
  • dann statt "add" auf "add and edit"



Step 7

    Die "Edit"-Ansicht (Edit-Reiter) interessiert uns noch nicht, gehe auf die "Properties" des contact-Dokumentes

  • clicke auf den Reiter "Properties" (Eigenschaften)



Step 8

    Hier geben wir die gewuenschten Felder ein, die wir fuer ein Adressbuch brauchen...

  • Name ist Name
    (achtung klein und grosschreibung beachten (name klein geschrieben hat noch mal eine sonderbedeutung!))
  • type ist "string"
  • value leerlassen
  • "Add"



Step 9

    Lege jetzt die nachfolgenden "Strings" an, mit genau dem Namen und Typ wie nachfolgend

    der letzte gehoert_zur_Gruppe wird vom typ "Multiple Selection"! und Value = "groups_"
    erinnerst du dich noch an "groups_"? aber erst mal weiter :-)
    es wird wirklich(!) leichter, wenn man es zweimal versucht hat :-))

    Name Typ: string
    Vorname Typ: string
    eMail_1 Typ: string
    eMail_2 Typ: string
    telefon Typ: string
    mobil Typ: string
    gehoert_zur_Gruppe Type: multiple selection !!! und Value: groups_



Step 10

    so sollte dein screen jetzt aussehen....

  • click zur sicherheit noch mal auf "save changes" !
  • danach zurueck zu dem "../daten/anschriften" - Folder



Step 11

    Bist du noch richtig? Wir befinden uns jetzt wieder im Ordner "../daten/anschriften"
    ... und legen zur Abwechslung mal einen Ordner an! :)

  • Folder auswaehlen und "Add"
  • mit der ID: personen
  • anschliessend gehst du in den Ordner personen
  • und waehlst dort nun das "AbracadabraObject" aus! :-)



Step 12

    Du bist jetzt in der "Add AbracadabraObject Eingabe"

  • Object: waehlen wir "contact" aus (na? clickert es? Noch nicht? OK, weiter! :))
  • ID: henni
  • und STATT "Add und Edit", jetzt gleich ein "Add und Edit Properties"!



Step 13

    MAGIG - ABRACADABRA
    Du siehst ein (noch nicht so schoenes Eingabefenster)
    (aber das aendern wir noch spaeter. Erst muss das Grundgeruest stehen.
    bevor die Goldkante kommt

  • lege so die erste Person an
  • und save changes nicht vergessen



Step 14

    Du bist im Ordner "../daten/anschriften/personen" und ein "Datensatz" ist angelegt.

  • Lege nun ein paar Personen an. 5 bis 6 reichen fuer dieses Howto
  • vergebe unterschiedliche Gruppenzugehoerigkeiten (Mehrfachauswahl mit Ctrl(Strg)+Maus moeglich)
  • -->abracadabraObject-->id=eindeutiger name--->edit properties--> ausfuellen und save nicht vergessen.
    Zurueck in den ordner und wieder von vorne. bis du 5 bis 6 angelegt hast.
    (Das wird auch noch komfortabler.keine Angst. wir sind aber immer noch am Geruest:)

  • danach sollte dein Ordner ungefaehr so aussehen, und wir gehen nun zurueck zum Ordner "../daten/anschriften"



Step 14aNEU

  • hier gehts weiter zu meinem HowTo Teil 3
  • Statt nachfolgenden 100 DTML-Methoden nur noch ein PythonScript und ein ZPT. Und das schösten: in Plone! :)


Step 15

    Zeit endlich ein index anzulegen um zu probieren ob funktioniert was wir hier tun ;-)

  • "DTML Methode" auswaehlen und "Add"




Step 16

  • Id: index_html (JA! mit unterstrich!)
  • Titel: nehmen wir hier Anschriften�bersicht
  • und statt "Add" wieder ein "Add and Edit"!



Step 17

  • copy & paste den nachfolgenden code
  • und speichern.






top>





















Name Vorname eMail 1 eMail 2 telefon mobil gehoert zur Gruppe
           







Step 18

    Folgendes solltest du aehnlich bei dir als ergebnis haben, wenn du danach auf den Reiter "View" clickst.


  • es geht was nicht? loesch deinen ordner "adressen" und fang nochmal an.


Erklaerungen

    Warum habe ich bei Step 3 geschrieben: "
  • Name ist groups_ <-- ja mit Unterstrich" ?
    Es ist einfach eine Angewohnheit, die du uebernehmen solltest. In dem Bereich ist es nicht schlecht die Properties zu kennzeichnen. Damit "kennzeichne" ich alle meine Values - und muss nicht noch mal nachgucken, wie ich das doch gleich benannt hatte.... Lese Step 3 und Step 9 noch mal und du weisst, was ich meine.



    Bei Step 8 schrieb ich:

  • Name ist Name (achtung klein und grosschreibung beachten (name klein geschrieben hat noch mal eine sonderbedeutung!))
    Ja welche denn... Ich habe "Name" gross geschrieben, weil "name"-klein geschrieben irgendwie schon besetzt ist :-)
    Ich schrieb bei Step 17:

    dadurch wird die Liste alphabetisch sortiert. Ich habe es probiert, bei Step 8 "name" zu nutzen, bekam aber immer einen error... :-)
    - Erklaerung zu Step 17 findest du hier

wie gehts weiter?

    so ist erst mal die GRUNDfunktion meines geruestes gegeben. was will ich noch - bzw. was kommt nach diesem kapitel?
  • weitere sortierungen und automatischer click mit email an die gruppen kommt als naechstes.
  • bis hierher sollte DAS so lange durchspielen bis es klick gemacht hat. irgendwie ist es wie
    ZClassen nur sehr viel einfacher.
  • wenn du soweit bist gehe ich auf die goldkanten und "spielereien" ein... bereits in Arbeit...


Anforderung an dich vor dem naechsten Kapitel:

  • 1-18 im Schlaf beherrschen ;-)
  • das ganze fuer dich angelegt, so wie DU es brauchst
    (inhalte auswahlfenster wie: Name, vorname, anschrift, ort etc.)
    wenn das vorhanden ist koennen wir weitermachen, damit das ganze wirklich gut wird.


Teil 2

Abracadabra Howto Teil 2


  Computers are not intelligent. They only think they are....         

Geschrieben von henni . Letzte �nderung 27.02.2004 14:53.