2014-08-31 44 views
0

,當我在我的測試域運行在一個窗體類下面的代碼:ZF2的Zend 表格 FormElementManager :: GET無法獲取或創建的Zend 表格元素日期時間實例

$dateformat = "Y-m-d H:i"; 
$this->add(array(
    'name' => 'startdatetime', 
    'type' => 'Zend\Form\Element\Datetime', 
    'attributes' => array(
     'id' => 'startdatetime', 
     'data-format' => "YYYY-MM-DD HH:mm", 
     'min' => date($dateformat, $nowdate), 
     'max' => date($dateformat, $futuredate), 
     'step' => '5', // minutes; default step interval is 1 mint 
    ), 
    'options' => array(
     'label' => _('Start date and time'), 
     'help-block' => _('Enter start date and time (YYYY-MM-DD HH:MM)'), 
    ), 
)); 
$this->get('startdatetime')->setFormat($dateformat); 

我得到這個錯誤:

Zend\Form\FormElementManager::get was unable to fetch or create an instance for Zend\Form\Element\Datetime 

當在本地運行這個沒有錯誤,所有的工作正常嗎? 另外文本和Textarea表單元素在它之前,工作正常。

我只是無法環繞它的頭... 任何想法?

提前致謝!

回答

2

日期時間元素is registered with the form element manager as an invokable class called datetime。您還可以使用班級的完全合格的班級名稱,當然這種情況下的情況是敏感,Zend\Form\Element\DateTime

因此,你需要做的唯一改變是大寫TDatetime

'type' => 'Zend\Form\Element\DateTime', 

或者使用實際的服務名稱,這與所有的服務,是區分大小寫

'type' => 'datetime', 
+0

謝謝!完全錯過了。 – Peter 2014-09-01 20:29:01

相關問題