一个 Yii + vue 项目(4)AR类简单操作

来源:互联网 发布:特价机票 知乎 编辑:程序博客网 时间:2024/05/20 19:19

在 yii home/models/ 下建一个 User.php,内容如下:

<?phpnamespace app\home\models;use yii\db\ActiveRecord;class User extends ActiveRecord{}

再在 site 控制器的 test 方法调用:

<?phpnamespace 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 方法定义:

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

原创粉丝点击