- Как получить имя сайта
<?=CHtml::encode(Yii::app()->name); ?>
2)Как установить вызываемый контроллер по умолчанию вместо ‘site’
надо в config/main.php установить значение
‘defaultController’=>‘post’,
‘defaultController’=>‘user’, и т.д.
3)Как добраться до корня сайта
<?php echo dirname(Yii::app()->basePath);?>
<?php echo Yii::getPathOfAlias(‘webroot’); ?>
4)Как прописывать src в картинке чтобы они везде показывались
<img src="<?=Yii::app()->request->baseUrl; ?>/images/logo.gif" alt="" />
5)Как использовать константы сайта
В config/main.php добавляем, например
'params'=>array(
'smtpEmail' => 'user@mail.ru',
'smtpPassword' => 'p[assword',
'smtpUsername' => 'username',
'smtpHost' => 'smtp.mail.ru',
),
И используем через
=Yii::app()->params[‘smtpEmail’];
6)Как вывести сообщение после отправки формы
Пишем в контроллере
Yii::app()->user->setFlash(‘contact_saved’,‘Thank you for contacting us. We will respond to you as soon as possible.’);
А в виюве
<?php if(Yii::app()->user->hasFlash(‘contact_saved’)){ ?>
<div class="flash-success">
<?php echo Yii::app()->user->getFlash('contact_saved'); ?>
</div>
<?php } ?>
- Как определить текущее действие
= Yii::app()->controller->action->id;
Валидация даты
В моделе models/users.php
public function rules()
{
return array(
array( 'DateOfBirth', 'type', 'type' => 'date', 'dateFormat' => 'yyyy-m-d', 'message' => '{attribute} no es una fecha valida', ),
…
- Как хранить значения конфига в базе данных
/components/Controller.php
protected function beforeAction($action){
/* CONFIGS */
$conf = Configs::model()->findAll();
foreach($conf as $k=>$c)
$params[$c->name] = $c->value;
Yii::app()->setParams($params);
/* END CONFIGS */
return true;
}
А потом используем
=Yii::app()->params[‘smtpEmail’];