Laravel中简单使用Repository模式
来源:互联网 发布:团购用什么软件 编辑:程序博客网 时间:2024/05/21 18:30
什么是Repository模式,laravel学院中用这样一张图来解释
其实将这个模式用在项目中就是为了将业务逻辑和具体的调用分开,创建一个仓库来存放这些业务逻辑。那么我们怎么使用呢?
建立Repository目录来存放不同的业务逻辑
在Contracts中存放接口文件,Eloquent中存放具体的实现方法
TestRepository.php
<?phpnamespace App\Repository\Test\Eloquent;use App\Repository\Test\Contracts\TestRepositoryInterface;class TestRepository implements TestRepositoryInterface{ public function test() { return 'this is test repository'; }}
TestController.php
<?php namespace App\Http\Controllers;use App\Http\Requests;use Illuminate\Http\Request;class TestController extends Controller{ public function test() { $test = app('Test'); $testInfo = $test->test(); echo $testInfo; }}
编写服务提供者
执行php artisan make:provider RepositoryServiceProvider
编写你自己的服务提供者
app\Providers\RepositoryServiceProvider.php注册Test仓库
public function register() { $this->registerTestRepository(); } public function provides() { $test = ['Test']; return array_merge($test); } private function registerTestRepository() { $this->app->singleton('Test', 'App\Repository\Test\Eloquent\TestRepository'); }
在app.php的providers数组中添加我们的服务提供者
'providers' => [ App\Providers\RepositoryServiceProvider::class,]
总结
通过这种方式我们可以将不同的业务逻辑分别创建一个仓库用来存放具体的方法,而在controller层只管调用不用去管具体的实现,也减少了controller层总对数据库的操作,使代码更加规范简洁。
1 0
- Laravel中简单使用Repository模式
- Laravel使用Repository模式
- Laravel Repository 模式
- Laravel Repository 模式
- 在 Laravel 5 中使用 Repository 模式实现业务逻辑和数据访问的分离
- 在 Laravel 5 中使用 Repository 模式实现业务逻辑和数据访问的分离
- Laravel框架中简单使用中间件
- 对laravel的repository的使用
- 如何使用 Repository 模式?
- Laravel简单使用
- Laravel简单使用
- Laravel Repository 模式-让你控制器更易读
- Laravel与Repository Pattern(仓库模式)——概念篇
- Laravel repository数据仓库使用 Star.hou红楼一梦
- 每天laravel-20160701|Repository
- 每天laravel-20160708|Repository
- laravel中使用apidoc
- laravel中ORM使用
- OKhttp的使用-工具类
- 用python 通过12306api抓取列车信息
- centos6.5 centos7.0百度云下载文件链接
- hadoop环境搭建
- 如何使用mstsc进行远程登录
- Laravel中简单使用Repository模式
- 使用office2007发表csdn博客
- Leetcode 167 Two Sum II - Input array is sorted
- Classifying ImageNet: using the C++ API
- BootStrap 模态框
- Modifying .IMG Files - BOOT.IMG RAMDISK.IMG RECOVERY.IMG SYSTEM.IMG
- Bugzilla报Can't locate object method "_QUIT" ,解决办法
- 深入理解Object-C消息转发机制
- SSH框架搭建与理解