dptsivmg82908 2016-07-03 00:07
浏览 59
已采纳

Symfony 3路由不工作YML

Here is app/routing.yml

app:
    resource: "@AppBundle/Resources/config/routing.yml"
    prefix:   /

Here are my Bundle Routes

index:
path:     /
defaults: { _controller: AppBundle:Main:index }

path:     /new
defaults: { _controller: AppBundle:Main:create }
methods:  [POST]

And here is my controller

class MainController extends Controller
{
    public function indexAction()
    {
    return $this->render('AppBundle:Main:index.html.twig', array(
        // ...
    ));
}

public function createAction ()
{
    $post = new Post();
    $post->setTitle('Example')
        ->setBody('THIS IS THE BODY OF THE POST');
    $em = $this->getDoctrine()->getManager();
    $em->persist($post);
    $em->flush();

    return new Response('POST '.$post->getTitle().' ADDED');
}

The index action works fine, but the createAction does not. I would just like to persist the $post object to the database. That should work fine as I followed the documentation, its just the route is not found. I checked to make sure using ./bin/console debug:router/

  • 写回答

2条回答 默认 最新

  • drctyr2869 2016-07-03 00:10
    关注

    I figured it out the yml should be

    index:
        path:     /
        defaults: { _controller: AppBundle:Main:index }
    
    create:
        path:     /new
        defaults: { _controller: AppBundle:Main:create }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?