Невозможно включить CSS с помощью функции asset - PullRequest
0 голосов
/ 05 июля 2018

У меня небольшой проект, и я использую Symfony 4.1 с Webpack Encore. Я пытаюсь включить файл CSS, но он не загружается. Открывая вкладку сети в Opera (dev tools), я вижу ошибку 404 при загрузке. Я поместил «активы» во вновь созданную «веб-папку», так как кажется, что это единственное место, где функция «активов» распознает их. У меня нет идей.

Мой шаблон веточки выглядит так:

{% block title %} Ads {% endblock %}

{% block body %}

    <head>
        <link rel="stylesheet" type="text/css" href="{{ asset('css/main.css') }}">
        <link rel="stylesheet" type="text/css" href="{{ asset('css/util.css') }}">
    </head>

    <div class="limiter">
                <div class="container-table100">
                    <div class="wrap-table100">
                        <div class="table100">
                            <table class="table">
                                <thead class="thead-dark">
                                    <tr>
                                        <th scope="col">ID</th>
                                        <th scope="col">Title</th>
                                        <th scope="col">Description</th>
                                        <th scope="col">Price</th>
                                        <th scope="col">Category</th>
                                        <th scope="col">Start</th>
                                        <th scope="col">End</th>
                                        <th scope="col"></th>
                                        <th scope="col"></th>
                                    </tr>
                                </thead>

                                <tbody>
                                    {% for ad in ads %}
                                        <tr>
                                            <th scope="row">{{ ad.id }}</th>
                                            <td> <a href="{{ path('ad',{'id':ad.id}) }}">{{ ad.title }}</a></td>
                                            <td>{{ ad.description }}</td>
                                            <td>{{ ad.price }}</td>
                                            <td>{{ ad.category.name}}</td>
                                            <td>{{ ad.startDate|date('d:m:Y') }}</td>
                                            <td>{{ ad.expiryDate|date('d:m:Y') }}</td>
                                            <td><a class="btn btn-primary btn" href="{{ path('edit_ad',{'id':ad.id}) }}" role="button"> Edit</a></td>
                                            <td> <form action="{{ path('delete_ad',{'id':ad.id}) }}" method="post"> <button type="submit" class="btn btn-default">Delete</button> </form> </td>
                                        </tr>
                                    {% endfor %}
                                </tbody>
                            </table>
                        </div>
                    </div>
                </div>
            </div>
{% endblock %}

Я хочу включить следующие файлы: main.css и util.css (мне не принадлежат эти два). Я новичок, когда дело доходит до фронт-энда, только началось.

Ответы [ 3 ]

0 голосов
/ 05 июля 2018

Кроме Андрея Вахнюка, ответ

В HTML теги <head> не должны быть в <body>

Возможно, вам придется использовать блок для него

{# templates/base.html.twig #}
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>{% block title %}Test Application{% endblock %}</title>

        {# CSS included in all pages #}
        <link rel="stylesheet" type="text/css" href="{{ asset('assets/css/main.css') }}">
        {# CSS included in special pages #}
        {% block stylesheets %}{%enblock%}
    </head>

тогда вы можете добавить только CSS, указанный для этой единственной страницы, используя

{% block title %} Ads {% endblock %}

{% block stylesheets %}
     {# it will replace the content of the block of base.html.twig". use {{ parent() }} to add cotnent isntead of replace it %}
     <link rel="stylesheet" type="text/css" href="{{ asset('assets/css/util.css') }}">
{% endblock %}

{% block body %}
    <div class="limiter">
                <div class="container-table100">
                    <div class="wrap-table100">
0 голосов
/ 12 июля 2018

Мне пришлось изменить конфигурационный файл xamp в: C: \ xampp \ apache \ conf \ extra \ httpd-vhosts.conf

<VirtualHost *:80>
    ServerName adsmanagement.test
    ServerAlias adsmanagement.test

    DocumentRoot C:/xampp/htdocs/ads-management/public
    <Directory C:/xampp/htdocs/ads-management/public>
        AllowOverride All
        Order Allow,Deny
        Allow from All

        FallbackResource /index.php
    </Directory>

    # uncomment the following lines if you install assets as symlinks
    # or run into problems when compiling LESS/Sass/CoffeeScript assets
    # <Directory /var/www/project>
    #     Options FollowSymlinks
    # </Directory>

    ErrorLog logs/ads_management.log
    CustomLog logs/ads_management_custom.log combined
</VirtualHost>
0 голосов
/ 05 июля 2018

Для загрузки файла, который находится под web > assets > css > style.css Вы должны использовать следующее <link rel="stylesheet" type="text/css" href="{{ asset('assets/css/style.css') }}">

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...