Reputation: 1227
I have problem with path to twig file. I would like to shorten the path. Look at my example:
class DefaultController extends Controller
{
public function indexAction($name)
{
return $this->render('CatalogFrontendBundle:Default:index.html.twig', array('name' => $name));
}
}
Of course it will work, but look at the path to twig file it's so long.. I now that I could use annotation like this @Template() but I don't want to. Is there any other way to use default twig file to render my page?
Default twig file - I understand as the file whose name is the same like name of action method. So if name of action is indexAction the name of twig file should be index.html.twig.
Upvotes: 0
Views: 376
Reputation: 1227
I can't found better solution to my problem. So I decide to use @Template, Mark have right it will be cached. And I think that better option is to use those annotation than write my own method or put all of the path in the render method.
So the answer is below:
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
class DefaultController extends Controller
{
/**
*
* @Template()
*/
public function indexAction($name)
{
return array('name' => $name);
}
}
Upvotes: -1
Reputation: 808
If you'd like a Symfony experience that is more geared toward Rapid Application Development (RAD) take a look at the KNP RAD bundle. This gives you a lot of convention-based shortcuts to work with, including automatic template resolution. See here: http://rad.knplabs.com/#template
Upvotes: 2