在 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,但也只是展示一下原理而已。