2017-10-16 66 views
0

我怎麼能夠從數據庫創建動態路由。 我使用自定義路由器,但是,我無法將教條鏈接與我的自定義路由器進行集成。 主要難點在於,Factory無法與自定義路由類連接。 有誰知道如何在ZF3中連接路由與數據庫?來自數據庫的ZF3動態路由

回答

0

你需要細分路線,例如。

'blogpost' => [ 
      'type' => Segment::class, 
      'options' => [ 
       'route' => '/novost/:id', 
       'defaults' => [ 
        'controller' => Controller\IndexController::class, 
        'action' => 'blogPost', 
       ], 
      ], 
     ], 

通知

:ID

ID在路線

動態的變量,你retrive它裏面的行動,比如

$id = $this->params()->fromRoute('id'); 

所以你可以從數據庫獲取此路由的數據並將其提供給ViewModel。例如:

$post = $this->model->getBlogPost($id); 

$vm = new ViewModel(['post' => $post]); 
return $vm; 

通知,你也可以有可選的變量與途徑括號 - > [/:變量]

當建立與URL鏈接幫手不要忘了變數。

$this->url('blogpost',['id'=>$someid]); 

更多信息:https://docs.zendframework.com/tutorials/in-depth-guide/understanding-routing/#segment-routes