Laravel blade '@include ()' чувствителен к регистру? - PullRequest
0 голосов
/ 19 февраля 2020

Я получаю сообщение об ошибке "blade not found shop.cart.favorites" при запуске в Docker в Ubuntu. (Следовательно: "чувствительная к регистру файловая система.")

Я подозреваю, что виновником является чувствительность к регистру. Путь к файлу блейда:

 resources/views/Shop/Cart/favorites.blade.php
                 ^    ^

Правильно ли я угадал?

Ответы [ 3 ]

0 голосов
/ 19 февраля 2020

В процессе рендеринга View метод view() в Laravel проверяет, существует ли файл шаблона Blade по указанному пути , используя встроенный метод PHP file_exists().

Хотя документы вообще не упоминают об этом, давно замечено , что эта функция может быть чувствительна к регистру (обычно в * nix) файловые системы, но не на Windows). Но поскольку вы не обязательно знаете, где будет выполняться ваш код (например, если вы создаете пакет), для кросс-платформенной совместимости рекомендуется использовать только строчные имена файлов для файлов шаблона Blade.

0 голосов
/ 19 февраля 2020

Хорошо, спасибо, ребята. На самом деле, это [ОТВЕТ], который я ожидал: базовая файловая система чувствительна к регистру, и поэтому PHP (file_exists() и др. ...), и, следовательно, также Laravel , Блейд-файл и имена папок чувствительны к регистру.


Теперь ... вот еще один вопрос: есть ли удобный плагин плагин для Laravel что может позволить мне "кататься" на этой проблеме? (Да, думаю, я тоже знаю, каким будет этот ответ. Но спрашивать не больно ...)

0 голосов
/ 19 февраля 2020

Вы допустили небольшую ошибку, брат ...

Изменение в вашем контроллере / функции, где вы определили представление. Как это .....

return View('Shop.Cart.favorites'); 

Это будет работать .. Проверьте это ..

Спасибо.

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