2
我已經使用MVCForm創建了一個表單並設置了Model類的擴展Model_Table。在模型類中我有一個日期字段。 我試圖編輯現有的記錄(在模型中使用GET和loadData()),但日期字段填充無效數據,例如如果我保存10/01/2012(M/d/Y),它填充01/10/2012存儲在atk4中的日期值無效MVCForm
我有約會
$config['locale']['time']='H:i:s';
$config['locale']['date']='m/d/Y';
$config['locale']['date_js']='mm/dd/yy';
$config['locale']['datetime']='m/d/Y H:i:s';
我在https://github.com/atk4/atk4/blob/master/lib/Form/Field/DatePicker.php#L51的set函數中註釋了第62到第65行。現在按預期工作。你能說出評論代碼的目的嗎? – Vinay
我不確定這些行是否正確。然後需要更深入地檢查它們。 _if(!$ value)return parent :: set($ value); _如果value不是,則使用parent(Field_Line)方法設置值。我估計基本沒用。如果格式爲d/m/Y,則嘗試從$值中提取日,月,年的值(默認格式爲 _ @ list($ d,$ m,$ y)= explode('/',$ value) )。 _if($ y)$ value = join('/',array($ m,$ d,$ y)); _如果year被設置(可能提取是正確的,但它缺少驗證),那麼將$ value m/d/Y格式。 _elseif($ m)$ value = join('/',array($ m,$ d)); _否則如果設置了month,則將$ value轉換爲m/d格式。 – DarkSide
說實話 - 這些行看起來很可疑,可能不是100%正確的。稍後我會在項目中討論日期和日期時間本地化問題。那麼我可能會爲此提供一些補丁。 默認情況下(與jQuery UI相同),BTW - ATK4不支持日期時間輸入小部件。您只能使用簡單的文本字段作爲替換,並且不能使用日曆小部件。 – DarkSide