Yii模型关系,重要性如何?

时间:2014-08-04 02:04:46

标签: mysql yii

这是我第一次使用yii而不像我以前的编程风格,我注意到它在模型中自动使用关系。

 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)'),
        );
    }

我没有用过这种MySQL关系。我的旧编程习惯是将数据连接/操作到php程序本身。为了澄清我的问题,这个yii模型关系是否重要?如果我不使用这种方法,我会遇到问题吗?

1 个答案:

答案 0 :(得分:2)

Yii关系非常有用,如果你使用它,你会发现它会让你减少编码并使你的代码更具可读性。

虽然它在Yii应用程序中使用得非常多,但如果你不使用关系,你就不会遇到任何麻烦,它应该可以帮助你更快地编码和开发。

就像你看过Yii博客一样,你有Post模型和评论模型之间的关系,你可以这样:

$post = Post::model()->findByPk( $id ); // find one post
$allCommentsRelated = $post->comments; // just one line for all search query and instanciating models
BTW在关系中,有两种类型的加载:

  • lazy loading(这是默认机制)
  • 渴望加载

您必须了解您的方案,并选择最适合该方案的方案