父类调用子类的常量 lumen查询数据库方式

我要在一个基类里面实例化所有的model 要根据集成的对象定义的model实例化

 

BaseRepository.php
<?php

namespace App\Repository;

class BaseRepository
{


    //获取到model的对象 类似于再仓储里面直接  User::get()
    public function query()
    {
        $model = static::MODEL; //通过这个可以调用到子类定义的MODEL常量
        return new $model();
    }

}

 

UserRepository.php 
<?php

namespace App\Repository;

//仓储 用于连接service和model
use App\Model\User;
use Illuminate\Support\Facades\DB;

class UserRepository extends BaseRepository
{
	const MODEL = User::class;

	public function getUserList()
	{

		$res = (new User())->first();  //new对象后查询
		$res = User::first(); //直接静态调用查询

		$query = $this->query(); //调用基类返回对象后查询
		return $res;
	}
}

 

posted @ 2019-10-06 10:25  brady-wang  阅读(506)  评论(0编辑  收藏  举报