簡體   English   中英

Symfony2新捆綁

[英]Symfony2 new bundle

我最近開始了我的Symfony2世界之旅。 我下載的檔案(標准版)附帶了一個AcmeDemoBundle演示包。 我試着編寫官方網站提供的Symfony2書。 所以我通過Symfony2控制台創建了一個我自己的(EXPHelloBundle)包。 然后,我創建了與當前捆綁關聯的控制器。

問題是這樣的:每當我運行我的應用程序(localhost / app_dev.php / hello / whatever)時,瀏覽器會打印“hello whatever”。 我知道此消息來自AcmeDemoBundle(Symfony2歸檔附帶的捆綁包)。 無論我對EXP / HelloController.php做出什么改變,該應用程序自然會運行AcmeDemoBundle(默認情況下)。 簡單地說,我不知道如何告訴Symfony2運行我的包而不是演示包。

你應該嘗試這個正確刪除acme包:

http://symfony.com/doc/current/cookbook/bundles/remove.html

您必須將HTTP請求路由到新控制器:

/**
 * @Route("/hello/{name}", name="_demo_hello")
 * @Template()
 */
public function newHelloAction($name)
{
    return array('name' => $name);
}

src/Acme/DemoBundle/Controller/DemoController.php告訴Symfony每當收到/ hello / whatever時執行helloAction函數。

嘗試在新控制器中編寫以下功能:

/**
 * @Route("/new/hello/{name}", name="new_demo_hello")
 * @Template()
 */
public function helloAction($name)
{
    return array('name' => $name);
}

然后在瀏覽器中轉到/ new / hello / something

關鍵是路由組件,在菜譜中查看它,你會發現很容易獲得基本概念。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM