think-repository
是为 thinkphp 6.0.*
提供的存储库用于抽象数据层,使我们的应用程序更灵活地进行维护。
>= thinkphp 6.0.*
composer require fanxd/think-repository dev-master
最好
在多应用
下使用
php think fanxd:repository Post
Route::resource('post', 'PostController');
$posts=$this->repository->get();
$posts=$this->repository->paginate($limit);
$posts=$this->repository->find($id);
$posts=$this->repository->first($id);
$posts=$this->repository->with(['state'])->find($id);
$posts=$this->repository->findByField('title', 'Hello');
$posts=$this->repository->findWhere([ 'id' => 1 ], ['id', 'title]);
$posts=$this->repository->findWhereIn('id', [1,2,3,4,5]);
$posts=$this->repository->findWhereNotIn('id', [6,7,8,9,10]);
$post = $this->repository->create($data);
$posts=$this->repository->update($where, $data);
$this->repository->delete($id)
$this->repository->deleteWhere([ 'id' => 1, 'user_id' => 1 ])
系统会自动生成transform
文件,可自行选择是否启用,主要功能对我来说就是美化接口让我们更专业 :)
<?php
namespace app\api\transform;
use fanxd\repository\command\transform\Transform;
class PostTransform extends Transform
{
public function transform($items)
{
return [
'id' => $items['id'],
//...
'createTime' => $items['create_time'],
'updateTime' => $items['update_time']
];
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。