ORO CRM в режиме prod пытается загрузить неправильные URL-адреса, но в режиме разработки все в порядке

В ORO CRM есть фрагмент кода, который возвращает конфигурацию requires.js

requirejs.config.js.twig:

paths: {
    {% if app.debug %}
        'oro/routes': '{{ path('fos_js_routing_js', {"callback":    
        "fos.Router.setData"}) }}'
    {% else %}
        'oro/routes': {{ asset('js/routes.js', 
        'routing')|json_encode|raw }}
    {% endif %}
}

в режиме разработки (отладка включена) это отображается как

paths: { 'oro / routes': '\ x2Fapp_dev.php \ x2Fjs \ x2Frouting \ x3Fcallback \ x3Dfos.Router.setData' }

... и это работает. однако в режиме отладки это будет отображаться как:

paths: {
   'oro/routes': "/js/routes.js"
}

который, когда require.js добавляет еще одно расширение ".js", браузер затем пытается получить

/js/routes.js.js

(почему обратная косая черта?)

это не работает ... так почему это происходит? это где-то проблема с конфигурацией? или я слишком глуп?

С уважением

.rm

Ну, обратная косая черта из-за json_encode

shukshin.ivan 09.03.2018 14:47

@ shukshin.ivan - правда? но похоже, что кто-то думает, что косую черту "/" нужно закодировать ... что не так ... хм. в любом случае. на самом деле проблема была не в этом. это странная вещь, которую я заметил сбоку.

rmalchow 09.03.2018 15:25
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
3
2
143
1

Ответы 1

Кажется, у вас есть пустые значения для следующих двух параметров в parameters.yml: assets_version: null assets_version_strategy: null

Попробуйте установить для них значения. Например: assets_version: a9f52621 assets_version_strategy: time_hash

Не забывайте чистить кеш.

Спасибо. я изучу это. по небольшому касательному вопросу: как вы вообще находите такую ​​проблему. это кажется действительно очень непонятной проблемой.

rmalchow 22.03.2018 11:55

Просто удалите parameters.yml в своем приложении. Запустите php composer.phar install. Установите необходимые параметры (например, настройки подключения к БД), остальные параметры используются по умолчанию. Затем установите приложение. После этого все работает нормально. assets_version будет обновлен автоматически и после установки приложения не будет null.

Mykhailo Sulima 22.03.2018 14:34

Другие вопросы по теме