estoy jugando un poco con Symfony2, y no tengo problemas, incluyendo CSS y JS archivos en ramita plantilla.¿Cómo incluir un archivo CSS en Symfony 2 y Twig?
Tengo un paquete nombrado Webs/HomeBundle
dentro de la cual tengo HomeController
con indexAction
que hace que un archivo de plantilla ramita:
public function indexAction()
{
return $this->render("WebsHomeBundle:Home:index.html.twig");
}
Así que esto es fácil. Ahora lo que quiero hacer es incluir algunos archivos CSS y JS dentro de esta plantilla Twig. Plantilla ve así:
<!DOCTYPE html>
<html>
<head>
{% block stylesheets %}
<link href="{{ asset('css/main.css') }}" type="text/css" rel="stylesheet" />
{% endblock %}
</head>
<body>
</body>
</html>
El archivo me gustaría incluir, main.css
archivo se encuentra en:
Webs/HomeController/Resources/public/css/main.css
Así que mi pregunta es, básicamente, cómo diablos voy a incluir archivo CSS sencilla en el interior de la ramita ¿modelo?
Estoy usando la función Twig asset()
y simplemente no toca la ruta correcta de CSS. Asimismo, Corro este comando en la consola:
app/console assets:install web
Esto crea una nueva carpeta
/web/bundles/webshome/...
esto es sólo vincula a la
src/Webs/HomeController/Resources/public/
¿verdad?
Preguntas
- ¿Dónde colocar el activo archivos, JS, CSS, y las imágenes? ¿Está bien colocarlos en la carpeta
Bundle/Resources/public
? ¿Es ese el lugar correcto para ellos? - ¿Cómo se incluyen estos activos archivos en su plantilla Twig usando la función activo? Si están en una carpeta pública, ¿cómo puedo incluirlos?
- ¿Debo configurar algo más?
activos app/consola: instalar --watch regenerará automáticamente activos a medida que cambian – Radu
@Radu sí, pero si crea enlaces simbólicos que no tendrá la --watch – Zero