Closed srhinow closed 1 year ago
das passiert mir übrigens auch unter Contao 4.4.28 und PHP7.2
Das hängt mit der Datenbank und dessen "sql_mode" zusammen. Ich weiss nicht mehr genau welcher es ist, mit einem leeren sql_mode kommt der Fehler aber sicher nicht mehr.
naja ob es immer sinnvoll ist am sql_mode zustellen und ob man auf allen Hosts die Möglichkeit hat nur damit bestimmte Fehler nicht angezeigt weden weiß ich nicht.
Besser wäre die folgenden Werte der: vendor/dma/dma_elementgenerator/src/dma_elementgenerator/dca/tl_dma_eg_fields.php wie folgt zusetzen:
'eval_maxlength' => array
(
'label' => &$GLOBALS['TL_LANG']['tl_dma_eg_fields']['eval_maxlength'],
'default' => 0,
'inputType' => 'text',
'exclude' => true,
'eval' => array('maxlength'=>3, 'tl_class'=>'w50', 'rgxp'=>'digit'),
'sql' => "int(10) unsigned NOT NULL default '0'"
),
und
'subpaletteSelector' => array
(
'label' => &$GLOBALS['TL_LANG']['tl_dma_eg_fields']['subpaletteSelector'],
'default' => 0,
'exclude' => true,
'inputType' => 'select',
'options_callback' => array('tl_dma_eg_fields', 'getCheckboxelements'),
'eval' => array('includeBlankOption'=>true, 'tl_class'=>'w50'),
'sql' => "int(10) unsigned NOT NULL default '0'"
),
orginal steht da
'default' => '',
und das Datenbankfeld ist nen integer
Es gibt unter Contao 4.6.5 beim anlegen eines Feldes einen Datenbank-Fehler das die Felder "subpaletteSelector" und "eval_maxlength" als Feldtyp integer nicht mit einem leeren String '' angelegt werden kann. Deshalb ist die Lösung diese beiden Felder in "vendor/dma/dma_elementgenerator/src/dma_elementgenerator/dca/tl_dma_eg_fields.php" die default-Werte von '' auf 0 zusetzen.