我試圖用extbase創建一些東西,但是我得到的錯誤消息並不是很有幫助。我將blog_example擴展作爲指導。 (可能)重要的區別是:我沒有數據庫表,因爲我想編寫一個通過REST連接到外部服務器的自定義域存儲庫。嘗試調用Controller-> createAction()時發生錯誤
實際的錯誤信息(插件上面顯示,而不是作爲一個例外消息):試圖調用Tx_MyExt_Controller_SubscriptionController-> createAction()
發生
錯誤類/控制器/ SubscriptionController:
剝離到重要的部分。class Tx_MyExt_Controller_SubscriptionController extends Tx_Extbase_MVC_Controller_ActionController { /** * @var Tx_MyExt_Domain_Repository_SubscriberRepository */ protected $subscriberRepository; /** * @return void */ public function initializeAction() { $this->subscriberRepository = t3lib_div::makeInstance('Tx_MyExt_Domain_Repository_SubscriberRepository'); } /** * @param Tx_MyExt_Domain_Model_Subscriber $subscriber * @dontvalidate $subscriber * @return string The rendered view */ public function newAction(Tx_MyExt_Domain_Model_Subscriber $subscriber = null) { $this->view->assign('subscriber', $subscriber); } /** * @param Tx_MyExt_Domain_Model_Subscriber $subscriber * @return string The rendered view */ public function createAction(Tx_MyExt_Domain_Model_Subscriber $subscriber) { } }
類/域/型號/用戶
class Tx_MyExt_Domain_Model_Subscriber extends Tx_Extbase_DomainObject_AbstractEntity { /** * @var string * @dontvalidate */ protected $email = ''; /** * @param string $email * @return void */ public function setEmail($email) { $this->email = $email; } /** * @return string */ public function getEmail() { return $this->email; } }
資源/個人/模板/認購/新
<f:form action="create" controller="Subscription" objectName="Subscriber" object="{subscriber}" method="post"> <f:form.textfield property="email"></f:form.textfield> <f:form.submit value="submit"></f:form.submit> </f:form>
事實
- 添加
$subscriber = null
刪除該消息。但是$subscriber
是null
然後- 一個
var_dump($this->request->getArguments());
顯示錶單中的字段- 有一個索引操作,並且它也是
ext_localconf.php
的提示,我發現大家還不解決方案定義的第一個動作爲我工作,所以我希望有人能指導我走向正確的方向。
只是爲了驗證:你有你的'Subscriber'模型中的getter和setter? – konsolenfreddy 2012-02-01 10:59:33
是。在問題中添加了setter/getter – pduersteler 2012-02-01 11:37:17