[gelöst] Zeichenbegrenzung eines Backend-Textfelds ändern
Ich lese über den Modul-Typ "Auflistung" verschiedenste Tabelleneinträge aus einer Datenbanktabelle aus.
Dazu habe ich im Feld "Bedingung" zahlreiche Bedingungen angeben. Mein Problem ist, dass die Anzahl der Zeichen, die standardmäßig für dieses Feld eingegeben werden, auf 255 eingestellt ist.
Siehe dazu in der Datei "tl_member" unter
Code:
system/modules/listing/dca
:
PHP-Code:
$GLOBALS['TL_DCA']['tl_module']['fields']['list_where'] = array
(
'label' => &$GLOBALS['TL_LANG']['tl_module']['list_where'],
'exclude' => true,
'inputType' => 'text',
'eval' => array('preserveTags'=>true, 'maxlength'=>255, 'tl_class'=>'w50')
);
Ich habe die 'maxlength' in der "dcaconfig.php"-Datei auf 300 erhöht.
PHP-Code:
$GLOBALS['TL_DCA']['tl_module']['fields']['list_where']['eval']['maxlength'] = 300;
Längerer Text lässt sich jetzt eintragen.
Nach dem Speichern wird die Eingabe im Textfeld jedoch auf 255 Zeichen gekürzt.
Hat wer von euch eine Lösungsidee, wie ich das ändern kann?
[gelöst] Datenbank Feldtyp ändern sql
Vielen Dank für die Hilfe the_scrat, du hast mich auf die richtige Idee gebracht.
Das Feld "list_where" ist ein Feld, das von Contao im Modul Auflistung (standardmäßig in Contao enthalten) angelegt wird.
Dieses Feld nutzt jedoch noch nicht die Möglichkeit, den entsprechenden Datenbank-Feldtyp direkt in der Felddefinition im DCA ( 'sql' => wert) anzugeben, sondern noch mit der "database.sql"-Datei:
Code:
config/database.sql
Code:
CREATE TABLE `tl_module` (
`list_table` varchar(64) NOT NULL default '',
`list_fields` varchar(255) NOT NULL default '',
`list_where` varchar(255) NOT NULL default '',
`list_sort` varchar(255) NOT NULL default '',
`list_search` varchar(255) NOT NULL default '',
`list_info` varchar(255) NOT NULL default '',
`list_info_where` varchar(255) NOT NULL default '',
`list_layout` varchar(32) NOT NULL default '',
`list_info_layout` varchar(32) NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Ich habe mir jetzt ein Modul (z_databaseconfig) erstellt, das nur die Datei "database.sql" enthält mit dem folgenden Code:
Code:
CREATE TABLE `tl_module` (
`list_where` varchar(300) NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
So funktioniert es jetzt und es ist update-Sicher.