Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: Erstellung eines eigenen CTs: Erstellun des Schemas

  1. #1
    bibi
    Gast

    Standard Erstellung eines eigenen CTs: Erstellun des Schemas

    Hallo Zusammen,

    bin gerade dabei, einen neuen CT zu erstellen, kann aber offensichtlich keine 2 Textfelder einfügen.
    Werde hier mal den Code einfügen:
    """ This file define the attributes and the widgeds a.s.o. for the newCT.
    Some of the imports are not needed in this basic setup, but they show
    who these fields and widgeds to be import.
    """
    import DateTime
    from Products.validation import V_REQUIRED
    from Products.Archetypes.public import AnnotationStorage
    from Products.Archetypes.Marshall import PrimaryFieldMarshaller
    from Products.ATContentTypes.configuration import zconf
    from Products.ATContentTypes.content.schemata import finalizeATCTSchema
    from Products.ATContentTypes.content.schemata import ATContentTypeSchema

    from Products.Archetypes.public import BaseSchema, Schema
    from Products.Archetypes.public import StringField, FileField, DateTimeField
    from Products.Archetypes.public import ImageField, TextField, LinesField
    from Products.Archetypes.public import StringWidget, FileWidget, CalendarWidget
    from Products.Archetypes.public import ImageWidget, RichWidget, LinesWidget
    from Products.Archetypes.public import SelectionWidget

    from Products.doktorandenbericht.config import *

    # Definition of the newCTSchemata
    #---------------------------------
    doktorandenberichtSchema = ATContentTypeSchema.copy() + Schema((
    TextField('achievedresults',
    required=True,
    searchable=True,
    primary=True,
    storage = AnnotationStorage(migrate=True),
    validators = ('isTidyHtmlWithCleanup',),
    default_content_type = zconf.ATDocument.default_content_type,
    default_output_type = 'text/x-html-safe',
    allowable_content_types = zconf.ATDocument.allowed_content_types,
    widget = RichWidget(
    label = "Welche wichtigen Ergebnisse wurden erzielt?",
    label_msgid = "label_protocol",
    rows = 25,
    i18n_domain = "doktorandenbericht",
    )
    ),
    TextField('achievedresults',
    required=True,
    searchable=True,
    primary=True,
    storage = AnnotationStorage(migrate=True),
    validators = ('isTidyHtmlWithCleanup',),
    default_content_type = zconf.ATDocument.default_content_type,
    default_output_type = 'text/x-html-safe',
    allowable_content_types = zconf.ATDocument.allowed_content_types,
    widget = RichWidget(
    label = "Welche wichtigen Ergebnisse wurden erzielt?",
    label_msgid = "label_protocol",
    rows = 25,
    i18n_domain = "doktorandenbericht",
    )
    ),
    ),marshall=PrimaryFieldMarshaller(),
    )

    finalizeATCTSchema(doktorandenberichtSchema)

    Es sollen im Ganzen noch mehr Textfelder werden, die alle mit Kupu editierbar sein sollen. Wenn man das so ausprobiert, bekommt im im skin nur das Titel- und Beschreibungsfeld sowie ein Textfeld. Ist es prinzipiell überhaupt möglich?
    Torty sollte den Code ganz gut kennen

    Viele Grüße
    Bibi
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    bibi
    Gast

    Standard

    Habe das Problem soeben gelöst. Wens interessiert:
    Da es nur primäres Textfeld gibt, muss das zweite und alle weiteren statt primary "secondary" sein.

    Viele Grüße und schönen Abend
    Bibi

  3. #3
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Oder andersrum: nur dem 1 primären Feld das primary=True verpassen. Dann passt es auch und ist nach Standard.

    Torty
    "Carpe Diem" powered by positiv Feelings

  4. #4
    Bibi
    Gast

    Standard

    Habe nun das Schema erstellt und es wird auch in plone als Oberfläche angezeigt. Wenn man nun allerdings seine Felder mit Inhalt füllen möchte, kommt ein attribute error. Da das Portal auch nur einsprechig sein kann, finde ich es schwierig, immer Übersetzungen mit einzufügen. Gibt es eine Möglichkeit, das zu umgehen. Oder andersrum gefragt: Muss ich nun nur meinen view anpassen, oder müssen die i18n-Dateien ebenfalls geändert werden?

    Grüße
    bibi

  5. #5
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Wenn du einen CT erstellen willst, der nicht mehrsprachig ist, so musst du:
    * das i18n-Verz. weglassen
    * im Schema auf 18n-domain verzichten
    * in deinen Templates auf die Verwendung aller i18n-Tags verzichten
    * alle sonst zu übersetzenden Texte direkt im Template angeben

    Hier ein Bsp.:
    Code:
    statt:
    <div ...
      i18n&#58;translate="my_id_for_this_text">...</div>
    
    nutze&#58;
    <div ...>mein Text der hier her soll</div>
    PS:
    Ich gehe davon aus, dass du dir meinen CT-Prototyp as Grundlage genommen hast. Das ist ok nur hatte ich ihn vorsetzlich multilingual gehalten, damit der Interessierte erkennt wie er das anstellt. Und multilinguale CT's sind wirklich auch "zukunftssicherer".

    Torty
    "Carpe Diem" powered by positiv Feelings

  6. #6
    Gast

    Standard

    Super,
    vielen Dank. Bin ja schon froh, wenns überhaupt läuft
    Werde mich dann jetzt nochmal ransetzen.
    Möchte es einfach so einfach wie möglich halten.
    Ist es möglich, statt "titel" z.b. datum einzusetzen?
    Muss das dann im allgemeinen Schema des ATCT geändert werden?

    Danke vielmals
    Bibi

  7. #7
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Zitat Zitat von Anonymous
    Ist es möglich, statt "titel" z.b. datum einzusetzen?
    Muss das dann im allgemeinen Schema des ATCT geändert werden?
    Ähmmm...wie meinst du das? Das Attribut title darf für ATCT's nicht fehlen. Belass es also drin und füge dir ggf. ein zusätzliches Datumsfeld hinzu.
    Mal schauen wie ich das machen würde...
    Code:
    # in DeinSchema.py 
    ...
       DateTimeField&#40;'datum',
        searchable=True,
        default_method=DateTime,
        languageIndependent=True,
        widget = CalendarWidget&#40;
            description= "Datum für xyz angeben",
            description_msgid = "",
            label="Datum",
            label_msgid = "",
        &#41;
      &#41;,
    ...
    Ist sicher nicht direkt lauffähig, aber google hilft dir da erstmal weiter.
    Du kannst dir auch in /Products/ATContentTypes/content die Dateoi event.py mal näher anschauen.

    Torty
    "Carpe Diem" powered by positiv Feelings

  8. #8
    Bibi
    Gast

    Standard

    Super, danke!

  9. #9
    Gast

    Standard

    Hallo Torty,

    ist es gar nicht möglich, die Überschriften der beiden Felder "title" und "description" im eigenen Contenttype zu ändern?
    Idee ist nämlich, dass die Leute ihre Berichte nach Datum ordnen. Sie sollen ja nur wissen, dass sie als Titel sozusagen das Datum eintippen sollen.
    Klar könnte ich auch ein Datumsfeld machen, aber dann weiß ja niemand, welchen Titel er wählen soll.

    Viele Grüße
    Bibi

  10. #10
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Oh - man könnte es natürlich aus dem Schema wieder löschen aber da weiß ich nicht welche Nebenwirkungen es dann zeigt. Anderenfalls kannst du statt dem ATCTSchema auch nur das Schema benutzen um deine Felder anzulegen.
    In meinem Bsp. hatte ich wohl vom ATCTSchema abgeleitet und dann mit + Schema() weitergemacht. Hier könnte man auch nur das Schema() verwenden. Dann hat er keinen Title mehr, aber hat er dann auch eine ID? Hmmm...bin ich im Moment überfragt.

    Schau mal ob dich dies hier weiter bringt: Archetype Development Guide

    Torty
    "Carpe Diem" powered by positiv Feelings

Ähnliche Themen

  1. [B] Tägliche Erstellung eines Blogbeitrag
    Von Xantrox im Forum Job Forum - Jobs für Grafiker, Programmierer und Webmaster
    Antworten: 0
    Letzter Beitrag: 12.04.2008, 00:15
  2. Erstellung eines Memberbereiches mit Bilderupload etc.
    Von Binerockx im Forum HTML & CSS Forum
    Antworten: 5
    Letzter Beitrag: 11.01.2008, 22:55
  3. Erstellung eines Formulars zum Registrieren.
    Von JonnyBravo81 im Forum HTML & CSS Forum
    Antworten: 3
    Letzter Beitrag: 18.03.2007, 11:27
  4. Erstellung eines zweiten Internets
    Von EuropaHeft im Forum HTML & CSS Forum
    Antworten: 4
    Letzter Beitrag: 19.11.2006, 19:43
  5. Problem mit der erstellung eines Skins
    Von Madde im Forum HTML & CSS Forum
    Antworten: 1
    Letzter Beitrag: 15.05.2006, 18:19

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •