= Yii =
Yii is a high-performance PHP framework best for developing Web 2.0 applications.
http://www.yiiframework.com/
== Slackware installation ==
http://www.yiiframework.com/doc/guide/1.1/en/topics.url#hiding-x-23x
* cd ~/Downloads
* wget https://github.com/yiisoft/yii/releases/download/1.1.15/yii-1.1.15.022a51.tar.gz
* cp yii-1.1.15.022a51.tar.gz /vars/www/htdocs
* cd /vars/www/htdocs
* tar xvzf yii-1.1.15.022a51.tar.gz
* cd yii-1.1.15.022a51
* chown apache * -R
* chmod 755 /etc/rc.d/rc.httpd
* vim /etc/httpd/httpd.conf
{{{
DirectoryIndex index.html index.php
LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
Include /etc/httpd/mod_php.conf # enable the php module
}}}
* vim /etc/httpd/vhosts.conf
{{{
ServerName localhostyii
DocumentRoot "/var/www/htdocs/yii-1.1.15.022a51"
Require all granted
AllowOverride all
}}}
* vim /etc/hosts
{{{
127.0.0.1 localhostyii
}}}
* vim /etc/httpd/php.ini
{{{
date.timezone="Europe/Lisbon"
}}}
* vim /var/www/htdocs/yii-1.1.15.022a51/demos/blog/.htaccess
{{{
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on
RewriteBase /demos/blog
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward it to index.php
RewriteRule . index.php
}}}
* vim blog/protected/config/main.php
{{{
'urlManager'=>array(
'showScriptName'=>false,
}}}
* /etc/rc.d/rc.httpd start
* Open URL http://localhostyii/demos/blog/index.php
* http://localhostyii/demos/blog/post/index
== Validation rules ActiveRecord CModel ==
http://www.yiiframework.com/doc/guide/1.1/en/form.model#declaring-validation-rules
|| '''Alias''' || '''Class''' ||
||boolean || CBooleanValidator ||
||captcha || CCaptchaValidator ||
||compare || CCompareValidator ||
||email || CEmailValidator ||
||date || CDateValidator ||
||default || CDefaultValueValidator ||
||exist || CExistValidator ||
||file || CFileValidator ||
||filter || CFilterValidator ||
||in || CRangeValidator ||
||length || CStringValidator ||
||match || CRegularExpressionValidator ||
||numerical || CNumberValidator ||
||required || CRequiredValidator ||
||type || CTypeValidator ||
||unique || CUniqueValidator ||
||url || CUrlValidator ||
{{{#!highlight php
public function rules()
{
return array(
array('username, password', 'required'),
array('rememberMe', 'boolean'),
array('password', 'authenticate'),
);
}
}}}