Also das ist wieder so ein Fall, wo man die Lösung selbst findet, kurze Zeit nachdem man hier eine Frage stellt. Tut mir leid...
Die Lösung für alle Neugierigen:
PHP-Code:
'testfield' => array
(
'label' => &$GLOBALS['TL_LANG']['tl_house']['testfield'],
'inputType' => 'select',
'options' => array('toll', 'besser', 'wow', 'crazy'),
'save_callback' => array
(
array('tl_house', 'test_save_callback'), // <-- sollte mit return '' oder null zurückgeben
),
'eval' => array
(
'doNotSaveEmpty' => true, // <-- DAS im Zusammenspiel mit einem save_callback war des Rätsels Lösung!
'submitOnChange' => true,
),
),
Die Lösung ist der eval-Ausdruck "doNotSaveEmpty" (muss true sein).
Wenn man dann noch eine save_callback Methode einrichtet, die immer einen Leerstring oder Null zurückgibt, dann wird der Wert nicht in die DB gespeichert.
Stattdessen kann man mit diesem Wert im save_callback machen was man will.
Lesezeichen