Компонент ресурсов Symfony & quot; недействительный URL

Я использую сервер webpack для обслуживания своих ресурсов в локальной разработке. У меня есть следующие в моем paramters.yml.dist

# local assets devserver address
# if you want to use webpack dev server use "http://localhost:8090"# and then > npm run devserver
assets_base_url: ~

У меня есть следующие в рамках для местной среды.

framework:
assets:
base_urls: ["%assets_base_url%"]

Моя проблема в том, что он не работает с базовыми настройками «~» для моих коллег, которые не используют devserver.

Error: "" is not a valid URL

Что я должен сделать, чтобы включить или отключить URL ресурсов devserver одним параметром в parameters.yml

Документы Symfony для компонента активов

1

Решение

Вместо того, чтобы положить base_urls: ["%assets_base_url%"]Вы можете сделать это в классе расширений вашего пакета.

namespace Acme\HelloBundle\DependencyInjection;

use Symfony\Component\HttpKernel\DependencyInjection\Extension;
use Symfony\Component\DependencyInjection\Extension\PrependExtensionInterface;
use Symfony\Component\DependencyInjection\ContainerBuilder;

class AcmeHelloExtension extends Extension implements PrependExtensionInterface
{
// ...

public function prepend(ContainerBuilder $container)
{
$assetBaseUrl = $container->getParameter('assets_base_url');
if (!$assetBaseUrl) {
$container->prependExtensionConfig(
'framework',
array(
'assets' => array(
'base_urls' => array($assetBaseUrl)
)
)
);
}
}
}

Внутри PrependExtensionInterface::prepend() метод, который вы можете предварительно установить настройки над config.yml конфигурации.

1

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

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

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector