Symfony2 — ответ контроллера с использованием CSS .html

Я недавно начал работать с Symfony2 и создал базовый контроллер:

    class HelloController extends Controller
{
/**
* @Route ("hello/{name}");
*/

public function HelloAction($name)
{
$htmlResp = $this->render('hello/hello.html.twig', array('userName'=>$name));
$htmlResp->headers->set('Content-Type', 'text/html');
return $htmlResp;
}
}

и мой файл hello.html — это просто базовый код с включенным bootstrap.css:

.
.
.
{% block stylesheets %}
<!-- Bootstrap core CSS -->
<link href="{{ asset('css/bootstrap.min.css') }}" rel="stylesheet" />
<!-- Custom styles for this template -->
<link href="{{ asset('starter-template.css') }}" rel="stylesheet" />
<!--<script src="../../assets/js/ie-emulation-modes-warning.js"></script> -->
{% endblock %}
.
.
.
{% block body %}
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
.
.
.

<div class="container">
<div class="starter-template">
<h1>Welcome!</h1>
<p class="lead">Hello, my dear friend named : {{ userName }}</p>
</div>

</div><!-- /.container -->

{% endblock %}
.
.
.

(точки вставляются для сокращения неважных фрагментов кода).

В результате ввода «localhost: 8000 / hello / SomeName» отображается простой HTML-сайт (файлы CSS не загружаются вообще).

Буду благодарен за любые советы, как заставить его загружать и отображать хорошо отформатированный сайт с помощью CSS.

1

Решение

Отлично. На вашем месте я бы сделал следующее:

  1. Убедитесь, что активы установлены
  2. Просто чтобы прояснить ситуацию — поместите все свои ресурсы в веб-каталог (этот каталог общедоступен, поэтому при запросе страницы браузер может загружать нужные файлы)
  3. Приготовить основной клен.

  4. Расширьте базовый шаблон в шаблоне, который вы хотите визуализировать (пример)

Код:

{% extends "base.html" %}

{% block title %}Index{% endblock %}

{% block head %}
<!-- some content here -->
{% endblock %}

{% block content %}
<!-- some content here -->
{% endblock %}

Теперь он разделен и последовательн, и все вещи включены в одном месте. Убедитесь, что путь к вашим файлам CSS правильный. Если вы не уверены, просто просмотрите страницу источника и попробуйте щелкнуть ссылку, сгенерированную asset (), и посмотреть, приведет ли вас к файлу.

Определите все блоки в базовом шаблоне, а затем перезапишите их в других шаблонах.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]