Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
| typo3:form [2017/07/10 22:45] – Finisher: SaveToDatabase und Datei-Upload admin | typo3:form [2023/04/26 20:02] (aktuell) – [Finisher: SaveToDatabase und Datei-Upload] admin | ||
|---|---|---|---|
| Zeile 139: | Zeile 139: | ||
| mapOnDatabaseColumn: | mapOnDatabaseColumn: | ||
| databaseColumnMappings: | databaseColumnMappings: | ||
| + | # Achtung: ab TYPO3 v12 müssen die beiden nachfolgenden Zeilen entfernt werden! | ||
| table_local: | table_local: | ||
| value: ' | value: ' | ||
| Zeile 287: | Zeile 288: | ||
| ===== Templating ===== | ===== Templating ===== | ||
| + | ==== Formular in Fluid-Template rendern ==== | ||
| + | |||
| + | Aufgrund eines Bugs können Formulare nur mit einem Workaround in Website-Templates integriert werden. | ||
| + | |||
| + | - Issue: https:// | ||
| + | |||
| + | **TypoScript: | ||
| + | <code typoscript> | ||
| + | lib.embeddedForm = FLUIDTEMPLATE | ||
| + | lib.embeddedForm { | ||
| + | template = TEXT | ||
| + | template { | ||
| + | value = < | ||
| + | } | ||
| + | extbase { | ||
| + | pluginName = Formframework | ||
| + | controllerExtensionName = Form | ||
| + | controllerName = FormFrontend | ||
| + | controllerActionName = perform | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | **Fluid:** | ||
| + | <code html> | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | Danke an Daniel Siepmann, der die Lösung am 6. Oktober 2020 in Slack gepostet hat! | ||
| + | |||
| + | ---- | ||
| ==== templateRootPaths für Formulare einrichten ==== | ==== templateRootPaths für Formulare einrichten ==== | ||
| Zeile 334: | Zeile 366: | ||
| Forge: [[https:// | Forge: [[https:// | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ===== Personalisierte Anrede in E-Mails ===== | ||
| + | |||
| + | **Form Definition**: | ||
| + | <code yaml> | ||
| + | renderables: | ||
| + | - | ||
| + | identifier: page-1 | ||
| + | label: ' | ||
| + | type: Page | ||
| + | renderables: | ||
| + | - | ||
| + | properties: | ||
| + | options: | ||
| + | Herr: Herr | ||
| + | Frau: Frau | ||
| + | prependOptionLabel: | ||
| + | fluidAdditionalAttributes: | ||
| + | required: required | ||
| + | type: SingleSelect | ||
| + | identifier: title | ||
| + | label: Title | ||
| + | validators: | ||
| + | - | ||
| + | identifier: NotEmpty | ||
| + | - | ||
| + | defaultValue: | ||
| + | type: Text | ||
| + | identifier: lastname | ||
| + | label: ' | ||
| + | properties: | ||
| + | fluidAdditionalAttributes: | ||
| + | required: required | ||
| + | placeholder: | ||
| + | validators: | ||
| + | - | ||
| + | identifier: NotEmpty | ||
| + | |||
| + | </ | ||
| + | |||
| + | **/ | ||
| + | <code html> | ||
| + | < | ||
| + | <f:case value=" | ||
| + | <f:case value=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | </ | ||