2016-03-04 8 views
2

Я разрабатываю приложение в Codeigniter с HMVC. Сейчас у меня есть эта структура папок:HMVC в Codeigniter - папка с активами

-Aplication 
-Assets 
--Module1 
---js 
---css 
--Module2 
-System 

Но я хочу перенести каждый модуль asstets в папку модуля

-Application 
--Modules 
---Module1 
----assets 
----controllers 
----views 
----models 

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

Любая идея, как я могу получить доступ к этой папке?

+0

Итак, в вашем приложении будет другая папка, такая как активы, и какая логика создания папки в модуле –

+0

, потому что я хочу, чтобы она была отдельной в модуле. Это лучше, если вы устанавливаете модуль с панели администратора. Как в плагинах wordpress, где у каждого плагина есть собственная папка с активами – user1559599

+0

У меня бы были активы в стороне от папки приложения. Как это рекомендуется делать. Htaccess в папке приложения блокирует его. – user4419336

ответ

1
<a href="<?php echo base_url() ?>application/modules/modules1/assets/css/style.css">Link</a> 
+0

уверен, но в исходной папке вы сможете увидеть весь путь приложения. Это приложение имеет два интерфейса пользователя и администратора – user1559599

+0

, если я понимаю, что вы просили ... создайте папку с именем admin внутри активов и другую папку для пользователя. добавьте то, что вам нужно, где .. Я надеюсь, что это имеет смысл – santosh

+0

Я хочу иметь модульное приложение, где я могу установить модуль, как ползунок. И то, что я пытаюсь сделать, это разместить модуль-модуль в папку модуля, со всеми видами активов и логикой. и назовите этот модуль в specyfic месте в приложении. Но я не могу получить доступ к активам, размещенным внутри папки модуля, и я не хочу, чтобы пользователь знал папку структуры приложения – user1559599

0

Я добавил массив к классу модуля для хранения активов и двух функций для хранения/извлечения элементов. Вот источник (обновлено modules.php)

 #Reigister your assets 
     public static function register_asset($asset) 
     { 
      if(in_array($asset,self::$assets) === FALSE) 
      { 
       self::$assets[] = $asset; 
      } 
     } 

     public static function assets() 
     { 
      return self::$assets; 
     } 

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

Modules::register_asset('myslider.js'); 

Вы можете получить все свои активы, используя

Modules:assets(); 

Которая вернет массив активов, которые могут быть обработаны в зависимости от ситуации.

Смежные вопросы