0
工作,我有這樣定義一個字段:爲什麼不EVAL空不是在TCA
max_items int(11) NULL
如果你離開這個領域我想它來存儲NULL後端空。
爲此,我使用TCA中,這是不行的這種配置:
'max_items' => array(
'exclude' => 0,
'label' => '...',
'config' => array(
'type' => 'input',
'eval' => 'null',
),
),
編輯: 存儲的預期值NULL
相反的,它存儲0
。 我試過max_items int(11) DEFAULT NULL
,但那不起作用。
編輯2: 謝謝freshp! 最後我寫我自己的eval函數:
<?php
class tx_myextension_evalfunc {
function evaluateFieldValue($sValue, $aIsIn, &$bSet)
{
return ($sValue === '') ? null : $sValue;
}
}
?>
使用這種配置:
'max_items' => array(
'exclude' => 0,
'label' => '...',
'config' => array(
'type' => 'input',
'eval' => 'tx_myextension_evalfunc',
),
),
對不起,「但它不起作用」不是很有幫助。你有錯誤嗎?實際存儲在數據庫中的是什麼?這是你的領域的整個配置還是你遺漏了一些東西? – Michael
您應該爲您的數據庫字段使用「max_items int(11)DEFAULT NULL」。 – freshp
感謝您的評論,我編輯了這個問題。 – user125661