MoinMoin Logo
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Navigation

  • Start
  • Sitemap
Revision 8 as of 2014-07-07 21:48:37
  • PHP
  • Yii

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

<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>
LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
Include /etc/httpd/mod_php.conf  # enable the php module
  • vim /etc/httpd/vhosts.conf

<VirtualHost *:80>
    ServerName localhostyii
    DocumentRoot "/var/www/htdocs/yii-1.1.15.022a51"
    <Directory "/var/www/htdocs/yii-1.1.15.022a51">
      Require all granted
      AllowOverride all
    </Directory>
</VirtualHost>
  • 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

We specify the validation rules in the rules() method which should return an array of rule configurations.

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

   1  public function rules()
   2     {
   3         return array(
   4             array('username, password', 'required'),
   5             array('rememberMe', 'boolean'),
   6             array('password', 'authenticate'),
   7         );
   8     }

Relations ActiveRecord

http://www.yiiframework.com/doc/guide/1.1/en/database.arr#declaring-relationship

Override the relations() method of CActiveRecord.

Types relationship:

  • self::BELONGS_TO
  • self::HAS_MANY
  • self::HAS_ONE
  • self::MANY_MANY

   1 public function relations()
   2     {
   3         return array(
   4             'posts'=>array(self::HAS_MANY, 'Post', 'author_id'),
   5             'profile'=>array(self::HAS_ONE, 'Profile', 'owner_id'),
   6         );
   7     }

CActiveRecord

http://www.yiiframework.com/doc/api/1.1/CActiveRecord

  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01