2017-05-16 31 views
0

我正在嘗試Symfony教程,但generateUrl不起作用。我在此LuckyController代碼行:Symfony generateUrl

$url = $this->generateUrl(
     'blog/show', 
     array('slug' => 'my-blog-post') 
    ); 

和頁面:BlogController有:

/** 
* @Route("/blog/show/{slug}") 
*/ 
public function showAction($slug) { 
    echo "hello world"; die; 
} 

從瀏覽器,它的工作原理,如果我把它從我是否調用/博客/顯示/試我的另一條路線,它不。爲什麼?

+0

看看一個非常類似的問題:http://stackoverflow.com/questions/43832163/how-to-send-params-in-url-query-string-in-symfony/43832271#43832271 – COil

回答

3

您需要爲您的路線設置一個名稱

/** 
* @Route("/blog/show/{slug}", name="blog_show") 
*/ 
public function showAction($slug) { 
    echo "hello world"; die; 
} 

那你用什麼來生成您的網址:

$url = $this->generateUrl(
    'blog_show', 
    array('slug' => 'my-blog-post') 
); 
+0

謝謝非常!! – ProtoTyPus

-2

首先時,千萬別在控制器方法調用另一種控制方法。如果你需要一些邏輯來分享他們,你應該使用一項服務。

+0

我知道,但我想嘗試看看我是否理解了! – ProtoTyPus