Учебники

Phalcon — Управление активами

Активы — все о дополнительных компонентах кроме существующей структуры в Phalcon. В Phalcon есть менеджер активов, который помогает управлять всеми компонентами активов, такими как файлы CSS или JS.

Общие используемые методы —

метод значение
__construct (переменная $ options) Инициализирует компонент Phalcon \ Assets \ Manager
addCss (строка $ path, переменная $ local, переменная $ filter, переменная $ attribute) Добавляет ресурс CSS из коллекции ‘css’ в определенный вид
addJs (строка $ path, переменная $ local, переменная $ filter, переменная $ attribute) Добавляет ресурс JavaScript в коллекцию ‘js’

пример

Рассмотрим пример проекта Phalcon «vokuro», который является лучшей иллюстрацией для добавления файлов CSS . Он будет включать активы / Manager для вызова всех файлов CSS .

Контроллер по умолчанию для проекта вызовет все файлы CSS .

<?php 

namespace Vokuro\Controllers; 
use Phalcon\Assets\Manager;  

/** 
   * Display the default index page. 
*/ 

class IndexController extends ControllerBase {  
   /** 
      * Default action. Set the public layout (layouts/public.volt) 
   */ 
   public function indexAction() { 
      $this->assets->addCss("public/style.css"); 
      $this->view->setVar('logged_in', is_array($this->auth->getIdentity())); 
      $this->view->setTemplateBefore('public'); 
   } 
}

style.css

div.remember { 
   margin-top: 7px; 
   color: #969696; 
}  
div.remember label { 
   padding-top: 15px; 
}  
div.forgot { 
   margin-top: 7px; 
   color: #dadada; 
}  
footer { 
   background: url("../img/feature-gradient.png") no-repeat scroll center 100% white; 
   color: #B7B7B7; 
   font-size: 12px; 
   padding: 30px 0; 
   text-align: center; 
}  
footer a { 
   margin-left: 10px; 
   margin-right: 10px; 
}  
table.signup td { 
   padding: 10px; 
}  
table.signup .alert { 
   margin-bottom: 0; 
   margin-top: 3px; 
}  
table.perms select { 
   margin-top: 5px; 
   margin-right: 10px; 
}  
table.perms label { 
   margin-right: 10px; 
}  
div.main-container { 
   min-height: 450px; 
} 

Активами будут управлять внутри представлений, которые будут отображать CSS-файлы в качестве вывода.

Index.volt

{{ content() }} 
{{ assets.outputCss() }} 

<header class = "jumbotron subhead" id = "overview"> 
   <div class = "hero-unit"> 
      <h1>Welcome!</h1> 
      <p class = "lead">This is a website secured by Phalcon Framework</p> 
      <div align = "right"> 
         {{ link_to('session/signup', '<i class="icon-ok icon-white">
            </i> Create an Account', 'class': 'btn btn-primary btn-large') }} 
      </div> 
   </div> 
</header> 

Выход

Это даст следующий результат —