2016-11-25 11 views
2

私はsymfonyフレームワークを初めて使うので、Php Stormで簡単なアプリケーションを作成したいと思っています。私は新しいLuckyControllerクラスを作成し、その内部に乱数を返す関数を追加し、ルートアノテーションを追加しました。問題は、ルートに沿ってどのように実行するかを正確にはわからないことです。私がRun-> LuckyControllerをクリックすると空白のページが表示されます。私のようなブラウザでURLを変更しようとしたVEの:symfonyの初期プロジェクトブラウザを表示

http://localhost:8000/lucky/number 

が、それは私の関数である

http://localhost:63342/initSymfony/src/AppBundle/Controller/LuckyController/lucky/number 

、すべてを「このサイトはアクセスできません」または言いますが、それは「404私をない与えます発見されました。

マイコード:

namespace AppBundle\Controller; 

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; 
use Symfony\Component\HttpFoundation\Response; 

class LuckyController { 
/** 
* @Route("/lucky/number") 
*/ 
public function numberAction(){ 
    $number = rand(1,100); 
    return new Response(
     '<html><body>Lucky number: '.$number.'</body></html>' 
    ); 
} 
} 

これを解決する方法は?

答えて

1

あなたの方法がうまくいくかどうかわかりませんが、私はいつも次のようにしています。あなたがしようとしたことは、コントローラをWebページとして表示することです。これは、空のビューを表示する理由です(その理由がわからない場合は、HTMLページの作成方法を試したことはありません)。

return $this->render('tiwg/luckyNumber.html.twig', array(
      'luckyNumber' => $number 
//NOTE: Make sure the render matches the path where you place the file 
)); 

あなたがすることは、コントローラーに幸運な数字を作って、その値をレンダリングするtwig.htmlファイルに送るように指示することです。これは、次を使用して呼び出すことができます

<div> 
    Your lucky number: {{luckynumber}} (containing the vairable) 
</div> 
+0

私はそれを解決します!私は、コマンドのPHP bin /コンソールサーバーで実行します。ブラウザで実行し、localhost:8000/lucky/numberありがとうとにかく – johnwilliam25

関連する問題