PHP code example of yiiext / activerecord-relation-behavior
1. Go to this page and download the library: Download yiiext/activerecord-relation-behavior library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
yiiext / activerecord-relation-behavior example snippets
class Post extends CActiveRecord
{
// ...
public function relations()
{
return array(
'author' => array(self::BELONGS_TO, 'User', 'author_id'),
'categories' => array(self::MANY_MANY, 'Category', 'tbl_post_category(post_id, category_id)'),
);
}
}
class User extends CActiveRecord
{
// ...
public function relations()
{
return array(
'posts' => array(self::HAS_MANY, 'Post', 'author_id'),
'profile' => array(self::HAS_ONE, 'Profile', 'owner_id'),
);
}
}
$user = new User();
$user->posts = array(1,2,3);
$user->save();
// user is now author of posts 1,2,3
// this is equivalent to the last example:
$user = new User();
$user->posts = Post::model()->findAllByPk(array(1,2,3));
$user->save();
// user is now author of posts 1,2,3
$user->posts = array_merge($user->posts, array(4));
$user->save();
// user is now also author of post 4
$user->posts = array();
$user->save();
// user is not related to any post anymore
$post = Post::model()->findByPk(2);
$post->author = User::model()->findByPk(1);
$post->categories = array(2, Category::model()->findByPk(5));
$post->save();
// post 2 has now author 1 and belongs to categories 2 and 5
// adding a profile to a user:
$user->profile = new Profile();
$user->profile->save(); // need this to ensure profile got a primary key
$user->save();
public function behaviors()
{
return array(
'activerecord-relation'=>array(
'class'=>'ext.yiiext.behaviors.activerecord-relation.EActiveRecordRelationBehavior',
),
);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.