第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

[moka同學(xué)筆記]yii2數(shù)據(jù)關(guān)聯(lián)

標(biāo)簽:
PHP

数据表
article表

articleCategory表

在models\articleCategory.php中

<?php

namespace app\models;

use Yii;
use \yii\db\ActiveRecord;
/**
 * This is the model class for table "yii2_article_category".
 *
 * @property string $id
 * @property string $category
 * @property string $create_at
 * @property string $updata_at
 */
class ArticleCategory extends ActiveRecord
{
    /**
     * @inheritdoc
     */
    public static function tableName()
    {
        return 'yii2_article_category';
    }

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['create_at', 'updata_at'], 'safe'],
            [['category'], 'string', 'max' => 15]
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'category' => '栏目',
            'create_at' => '创建时间',
            'updata_at' => '修改时间',
        ];
    }

    public function getArticle(){
        return $this->hasMany(Article::className(),['category_id'=>'id'])->asArray()->all();
    }
}

在控制器controllers/articleCategoryController.php中

<?php
/**
 * Created by PhpStorm.
 * User: moka同学
 * Date: 2016/07/27
 * Time: 8:52
 */
namespace app\controllers;

use yii\web\Controller;
use app\models\Article;
use app\models\ArticleCategory;

class ArticleCategoryController extends Controller{
    public function actionIndex(){
        //$date = 'hello';

        //根据栏目查询它的文章信息

        $articleCategory = ArticleCategory::find()->where(['category'=>'心奇天下'])->one();
        //$article = $articleCategory->hasMany('app\models\Article',['category_id'=>'id'])->asArray()->all();
        //$article = $articleCategory->hasMany(Article::className(),['category_id'=>'id'])->asArray()->all();
        //$article = $articleCategory->getArticle();
        $article = $articleCategory->article;
        var_dump($article);die();

        return $this->render('index',[
            'data'=>$date
        ]);
    }
}

说明:

$article = $articleCategory->hasMany('app\models\Article',['category_id'=>'id'])->asArray()->all();
这句中的category_id为artile表中的,id为articleCategory表。注意先后顺序,可以理解为栏目中有很多文章,所以文章中的category_id需要对应栏目的id. asArray()是以数组的形式输出,如果没有则是对象。
对hasMany进行了封装,让其存在model中,可供多次使用。
结果

第二种 根据文章查询栏目信息
在model中,article的model中


//根据文章查询栏目的信息,hasOne()因为一个文章只属于一个栏目,一比一的方法
public function getArticleCategory(){
    return $this->hasOne(ArticleCategory::className(),['id'=>'category_id'])->asArray();
}

在控制器中

//根据文章查询栏目信息
$article = Article::find()->where(['id'=>1])->one();
$articleCategory = $article->articleCategory;
var_dump($articleCategory);die();

结果:

點(diǎn)擊查看更多內(nèi)容
1人點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消