2010-04-08 86 views
1

當我使用的形式助手做一次輸入,usaually我寫的代碼如下自定義日期時間格式在CakePHP

<?php 
$options = array(
    'label' => '', 
    'type' => 'datetime', 
    'timeFormat'=>'24', 
    'separator'=>'-' 
); 
echo $form->input('Service.endtime',$options); 
?> 

但現在我得到我想要做一個時間的輸入風格這樣的問題作爲

month-day-hour 

然後如何做到這一點與助手設置一些參數?建議將不勝感激。

回答

2

那麼dateformat選項將允許您配置日期部分。

用於指定與日期相關的一組輸入的選擇輸入的格式。有效值包括'DMY','MDY','YMD'和'NONE'。 http://book.cakephp.org/view/203/options-dateFormat

但是爲了這個,我認爲你需要擴展助手和創建自定義函數將返回該混合日期和時間樣式。否則,我只能想到有兩個選擇,一個月和一天,一個小時。然後在beforeSave()或beforeValidate()合併數據別的地方,也許

+0

在蛋糕的lib通過form.php的準備後,我使用'$ form-> month()''幫助程序中的單個部分輸入函數獲得了一個解決方案。雖然有更多的參數發佈,但仍然比手動更好:) – Young 2010-04-08 13:39:23

+0

很酷,方便知道! – 2010-04-08 13:48:45

2

希望我的解決方案可以幫助別人用一樣的要求:

<?php 
//echo $form->year('Modelname.year',2001,2021,intval(date('Y')),false)."-"; 
echo $form->month('Modelname.month',date('m'),'',false)."-"; 
echo $form->day('Modelname.day',date('d'))."-"; 
echo $form->hour('Modelname.hour',1,date('H')); 
?>