yafowil.yaml

YAML PARDER voor widgetbomen
Download nu

yafowil.yaml Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • BSD License
  • Naam uitgever:
  • BlueDynamics Alliance
  • Uitgever website:
  • http://bluedynamics.com

yafowil.yaml Tags


yafowil.yaml Beschrijving

YAML PARDER voor widgetbomen YAFOWIL.YAML is een Python-module om YAFowil-formulieren in YAML.USAGECREATE YAML-bestand te beschrijven met formulier BeschrijvingFactory: Formname: Demo_FormProps: Action: Context.Form_ActionWidgets: - Titel: Factory: Label: FIELD: Fout: Tekstwaarde: Expr: Context.get ('title', '') Props: Label: Titel Vereist: geen titelgegeven- Beschrijving: Factory: Label: Field: Textarea-waarde: expr: context.get ('Beschrijving', '') Props: Label: Description Rows: 5- Opslaan: Factory: Submit Props: Action: Save Expression: True Handler: context.Save Volgende: context.next label: SaveAld widget knooppunt wordt weergegeven door een associatieve array. Sleutels worden in kaart gebracht met de overeenkomstige argumenten van YAFowil.base.factory handtekening: fabriek geketende fabrieksregistratienamen.Name Widget-naam. Alleen vereist op root, voor Children Widget-toets wordt gebruikt.Value Widgetwaarde of Callable / Expression Retourneer Widget Value.Props Widget-eigenschappen als associatieve widget-eigenschappen Aangepaste widget-eigenschappen als associatieve array.widgets kinderwidgets als lijst. Elke Child-widget is een associatieve array met één sleutel - de Widget-naam - die opnieuw een associatieve array bevat met de sleutels die hier expibileerden. Resolutie van definitie Waardenbeside Statische waarden, definities kunnen Python-uitdrukkingen, toegang tot belleningscontext bevatten. Als de definitiewaarde begint met expr:, wordt een callback-wrapper gemaakt die wordt uitgevoerd telkens wanneer de widgetboom wordt weergegeven. Om veiligheidsredenen is alleen de renderingcontext toegankelijk in uitdrukkingen .- Als de definitiewaarde begint met context, wordt het weergeven van context gebruikt om callbacks op te zoeken. Als opzoeken mislukt, retourwaarde de definitiewaarde als string.- als '.' wordt in de definitie-waarde gevonden, probeer het terugbellen van de modulepad op te zoeken. Als opzoeking mislukt, retourwaarde-waarde als string.define rendering contexta rendering context wordt verschaft door een klasse. Verwijzend naar de bovenstaande voorbeeld van het formulier Beschrijving, ziet dit eruit als: >>> Klasse FORTRENDERINGSCONTEXT (Object): ...... Def Get (Self, Key, Default = Geen): ... # Doe gegevens opzoeken hier ... Waarde = Key ... retourwaarde ...... DEF FORMATION_ACTION (Self, Widget, Data): ... # Creëer en retourneer formulier Actie URL ... Return 'http://example.com/form_action'. ..... DEF OPSLAAN (ZELF, WIDGET, GEGEVENS): ... # extract en opslaan Formuliergegevens ... Pass ...... DEF NEXT (SELF, VERZOEK): ... # COMPUTE EN RETOUR URL ... Return 'http://example.com/Form_Action_Suceed'to verkrijg een YAFowil widget-boom van YAML, gebruik YAFOWIL.YAML.PARSE_FROM_YAML: >>> IMPORT YAFOWIL.LOLTER >>> van YAFOWIL.YAML IMPORT PARSE_FROM_YAML >> > rendering_context = formRenderingContext () >>> Form = PARSE_FROM_YAML (Demo_Form_Path, Context = rendering_context) Deze resultaten voor ...: >>> Form.PrintTree () : Demo_Form : titel : Beschrijving : Opslaan ... Die Renders: >> > PXML (formulier ())