Phalcon - Manajemen Aset
Aset adalah semua tentang komponen tambahan selain kerangka kerja yang ada di Phalcon. Phalcon memiliki manajer aset yang membantu mengelola semua komponen aset seperti file CSS atau JS.
Metode umum yang digunakan adalah -
metode | Pentingnya |
---|---|
__construct (variabel $ options) | Menginisialisasi komponen Phalcon \ Assets \ Manager |
addCss (string $ path, variabel $ local, variabel $ filter, variabel $ atribut) | Menambahkan sumber daya CSS dari koleksi 'css' ke tampilan tertentu |
addJs (string $ path, variabel $ local, variabel $ filter, variabel $ atribut) | Menambahkan sumber daya JavaScript ke koleksi 'js' |
Contoh
Pertimbangkan contoh proyek Phalcon “vokuro” yang merupakan ilustrasi terbaik untuk ditambahkan cssfile. Ini akan mencakup aset / Manajer untuk meminta semuacss file.
Kontroler default untuk proyek tersebut akan memanggil semua css file.
<?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;
}
Aset akan dikelola di dalam tampilan, yang akan menampilkan file css sebagai output.
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>
Keluaran
Ini akan menghasilkan keluaran sebagai berikut -