Модульные расширения CI привязывают к активам - PullRequest
2 голосов
/ 08 июня 2011

Итак, я делаю CMS в настоящее время и использую модульные расширения HMVC CI 2.0.Это прекрасно.Мне интересно, какой правильный способ хранения моих активов (js, css, img) связан с модулем в каталоге модулей.

Проблема в том, как мне связать эти активы?Допустим, я использую шаблонизатор и передаю js-файлы для загрузки для конкретной страницы:

$js[] = 'assets/js/my_js.js';

Полагаю, я все спрашиваю неправильно, но есть ли простой способ связать, используяКаталог текущего модуля?

Заранее спасибо.

1 Ответ

0 голосов
/ 08 июня 2011

Для этого в CI или HMVC ничего не встроено.

Я предпочитаю , а не для ссылки на файлы, которым разрешен прямой доступ, например, images / js / css, из каталога приложения. Главным образом потому, что:

  • Я не хочу, чтобы кто-то знал , как выглядят внутренности моего приложения. Обращаясь к файлам непосредственно из модуля, вы открываете структуру каталогов вашего приложения.

  • Я бы никогда этого не сделал, если бы я не использовал HMVC

  • Теперь вы должны разрешить прямой доступ к (определенным) каталогам в приложении через .htaccess. Из соображений безопасности я предпочитаю просто запретить все это.

Я понимаю желание быть как можно более модульным, но для меня это не стоит таких хлопот. Я предпочитаю хранить отдельный каталог в общей папке под названием «модули» (дублирующая структуру моего приложения / модулей), в которой нет ничего, кроме «ресурсов» (css, js, images ...).

Я бы предложил некоторый код, но я понятия не имею, как вы добавляете js / css в свои представления - это, вероятно, сильно отличается от того, как я это делаю. Было бы достаточно легко написать функцию для обнаружения текущего модуля, контроллера или метода и автоматического изменения папки ресурсов, но это может помешать другим общим ресурсам. Я бы предложил написать совершенно отдельную функцию для загрузки ресурсов из модулей.

...