我需要在調用Apigility數據庫連接的休息服務(例如創建實體的服務)後執行一些操作。我想用Zend Events做到這一點,但我不知道從哪裏開始,因爲Apigility沒有創建任何我能看到的代碼。如果有人能提供一個例子來說明如何做到這一點,那就太好了。我是Zend和Apigility的新手。 在此先感謝亞歷杭德羅· 使用Zend事件進行Apigility數據庫連接的操作ocurr時要做些什麼
1
A
回答
0
代碼爲例,以一個邏輯附加到MvcEvent
在模塊/ APIName/Module.php
<?php
namespace APIName;
use Zend\Mvc\MvcEvent;
class Module
{
public function onBoostrap($e)
{
$eventManager = $e->getApplication()->getEventManager();
$serviceManager = $e->getApplication()->getServiceManager();
$eventManager->attach(MvcEvent::EVENT_ROUTE, function($event) use($serviceManager){
$route = $event->getRouteMatch()->getMatchedRouteName();
// Do some stuff, tests, etc...
}, -1100); // set low priority to be sure that route is defined
}
}
你的事件將路由時,可以自動由框架觸發。
相關問題
- 1. 爲了使用Android連接到中央數據庫,我需要做些什麼?
- 2. 使用Zend Framework 2進行動態數據庫連接?
- 3. 使用共享數據庫連接時需要知道什麼?
- 4. Zend的數據庫連接
- 5. Zend阻止具體操作上的數據庫連接
- 6. 使用Zend Registry連接到數據庫
- 7. 使用Zend \ Db連接到數據庫
- 8. 使用Hadoop MapReduce進行連接操作
- 9. 對數據連接中的數據庫執行Linq操作
- 10. 使用線程進行數據庫操作的最佳方式是什麼?
- 11. 這些操作員在做什麼C
- 12. 我需要做些什麼來保持與Azure DB的連接?
- 13. 連接的數據庫無法連接進行連接
- 14. 使用include /需要連接數據庫
- 15. 爲什麼要使用HttpClient進行同步連接
- 16. Zend Framework中的數據庫連接
- 17. Zend View Helper中的數據庫連接
- 18. Zend的數據庫表三表連接
- 19. 嘗試還原數據庫時,mysqldump會執行什麼操作?
- 20. 每次打開數據庫連接時運行查詢Zend FM
- 21. 此操作需要連接到'主'數據庫
- 22. symfony的:做數據庫連接確實需要root用戶
- 23. 當$ .get完成時要做些什麼
- 24. 使用C/C++與mySQL數據庫進行接口連接?
- 25. 爲什麼要使用相同表的別名,做自連接
- 26. 使用python進行數據框操作
- 27. 爲什麼領事嘗試連接到我的數據庫?
- 28. ms-access:在數據庫打開時做些什麼
- 29. 使用jdbcTemplate,我可以做些什麼來測試連接性?
- 30. 調用類來做數據庫連接
Apigility在ZF2的模塊目錄中創建模塊,您可以根據需要修改代碼。要使用事件,我建議你在Module.php onBoostrap事件中附加一個事件,並在你調用其他服務時觸發它,[如何使用事件管理器](http://framework.zend.com/manual/2.0/ en/modules/zend.event-manager.event-manager.html)和[更高級的用法](http://samsonasik.wordpress.com/2013/05/18/zend-framework-2-register-event-listeners -in-configuration-file /) – SmasherHell
這就是Apigility在創建數據庫連接休息服務時所創建的只有兩個類EntityNameCollections和EntityNameEntity,至此沒有任何代碼,所以我不知道是否需要觸發。我可以創建自己的資源類,但我不知道它是否會替代apigility正在執行的操作。 – aexposito
在所有情況下,您的API都像標準zf2模塊一樣構建,使用module.config.php,Module.php。你的實體和集合都在'模型'層上,並且應該包含業務邏輯(你必須手動添加,因爲如果你有特殊的邏輯來實現,apigility無法猜測。順便說一下,框架必須加載模塊,這樣做,Module.php被調用,你可以在那裏附加事件,然後觸發它們到實體或你想要的任何類。ZF2觸發mvc事件返回一個Response對象。 – SmasherHell