我有很多包含許多不同字段的實體,但都包含:IP,時間戳和'控制器/操作'。關聯的表單提供了除這三個以外的所有實體屬性的字段。我寧願不提供隱藏的字段,而是在表單提交後填充這3個字段。從ZF2的Doctrine2用戶中檢索請求的控制器/動作
這就是爲什麼我創建了Doctrine訂戶(根據here)並且正在傾聽'onPersist'事件。我已經成功地設置了IP和時間戳記字段,並將它們保存在用戶的數據庫中。從請求的控制器內部,我可以只做$this->params('controller');
或$this->params('action');
來獲得我需要的東西。但是,我在檢索用戶內部請求的控制器/操作時遇到了一些麻煩。
我試着在用戶和訂戶的工廠上根據here執行Zend\Mvc\InjectApplicationEventInterface
,但最終我得到的只是一個空實例,而不是包含我需要的實例。我也嘗試傾銷各種服務經理(IE:ControllerLoader,ControllerPluginManager和ViewHelperManager)的內容,但沒有看到'Zend \ Mvc \ MvcEvent'的任何實例
我有一個預感,我需要的是可以通過一個的服務經理。爲了弄清楚如何檢索Zend\Mvc\MvcEvent
的現有實例,我應該考慮什麼?此外,我假設最好從工廠內爲我的訂閱者檢索它,如果這不是最好的方法,請糾正我。
謝謝你,我有工廠和服務定位,只是不知道如何得到它的MvcEvent。我也沒有意識到有一個主要的應用程序對象將在未來派上用場。 –