bektasyildiz/laravel-repository

0.1.0 2023-12-11 16:48 UTC

This package is auto-updated.

Last update: 2024-09-27 21:08:12 UTC


README

安装

composer required bektasyildiz/laravel-repository

在app/config.php中添加提供者

Bektasyildiz\LaravelRepository\LaravelRepositoryServiceProvider::class,

发布配置

php artisan vendor:publish --tag=config

用法

使用控制台命令为eloquent模型文件创建新的仓库

php artisan make:repository App/Models/Product

通过依赖注入使用

<?php
namespace App\Http\Controller;
use App\Repositories\ProductRepository;
use Appp\Models\Product;

class ProductController extends Controller
{
  public function allWithRespositoryFile(ProductRepository $productRepository)
  {
    $getAll = $productRepository->getAll();
    return view('view.file', compact('getAll'));
  }

  public function allWithoutRespositoryFile(LaravelRepository $laravelRepository)
  {
    $repository = $laravelRepository->getRepository(new Product());
    $getAll = $laravelRepository->getAll();
    return view('view.file', compact('getAll'));
  }
}

目录层次结构

|—— .gitignore
|—— LICENSE
|—— composer.json
|—— config
|    |—— config.php
|—— src
|    |—— Commands
|        |—— MakeRepository.php
|    |—— Exceptions
|        |—— LaravelRepositoryException.php
|    |—— LaravelRepository.php
|    |—— LaravelRepositoryFacade.php
|    |—— LaravelRepositoryServiceProvider.php
|    |—— Repositories
|        |—— BaseRepository.php
|        |—— RepositoryInterface.php
|—— templates
|    |—— repository.template

许可证

MIT