1. 程式人生 > >一個 Yii + vue 專案(4)AR類簡單操作

一個 Yii + vue 專案(4)AR類簡單操作

在 yii home/models/ 下建一個 User.php,內容如下:

<?php
namespace app\home\models;

use yii\db\ActiveRecord;

class User extends ActiveRecord
{
}

再在 site 控制器的 test 方法呼叫:

<?php

namespace app\home\controllers;

use app\home\models\User;
use yii\filters\Cors;
use yii\helpers\ArrayHelper;
use yii\web
\Controller; class SiteController extends Controller { public $defaultAction = 'test'; public function behaviors() { return ArrayHelper::merge([ [ 'class' => Cors::className(), 'cors' => [ 'Origin' => ['http://vue.com'
], 'Access-Control-Allow-Credentials'=> true, ], ], ], parent::behaviors()); } public function actionTest(){ $data = User::find()->all(); return $this->asJson($data); } }

結果顯示如下
這裡寫圖片描述
這兩條資料是我隨便新增的,另外還要注意資料庫的表名(user) 要和類名(User)對上,假如類名不對應,可以用 tableName 方法定義:

<?php

namespace app\home\models;

use yii\db\ActiveRecord;

class User extends ActiveRecord
{
    /**
     * 返回真正的表名
     * @return string
     */
    public static function tableName(){
        return 'user';
    }

}

AR類(活動記錄)的簡單操作可以看一下這篇文章。so,這裡先寫一個簡單的驗證方法:

    public function actionLogin(){

        $username = Yii::$app->request->post('username');
        $password = Yii::$app->request->post('password');

        $data = User::find()->where(['username'=>$username])->one();
        $result = $data->password == $password ? '驗證通過' : '驗證失敗';

        echo $result;

    }

好吧,我知道這樣寫得很low,但也只是展示一下原理而已。