大卫的Web/laravel-bricklink-api

Laravel对davesweb/bricklink-api包的封装。

1.0.2 2022-05-06 18:21 UTC

This package is auto-updated.

Last update: 2024-09-06 23:25:53 UTC


README

本包是对 davesweb/bricklink-api 包的Laravel封装。它为您的Bricklink凭证添加了配置文件,一个服务提供者,用于正确注册所有内容以进行依赖注入,以及自动发现到 davesweb/bricklink-api 包。其他功能保持不变。

安装

通过composer: composer require davesweb/laravel-bricklink-api

安装后,使用 php artisan vendor:publish --tag=bricklink-config 发布配置文件。

配置

本包需要4个新的环境变量

BRICKLINK_CONSUMER_KEY=
BRICKLINK_CONSUMER_SECRET=
BRICKLINK_TOKEN_VALUE=
BIRCKLINK_TOKEN_SECRET=

您可以在您的Bricklink账户中找到这些变量的值。

用法

本包负责API连接的配置,因此您可以直接在Laravel应用程序中注入或解析存储库类。

示例1:在控制器中注入分类存储库

<?php

namespace App\Http\Controllers;

use Illuminate\Contracts\Support\Renderable;
use Davesweb\BricklinkApi\Repositories\CategoryRepository;

class CategoryController extends Controller
{
    public function index(CategoryRepository $repository): Renderable
    {
        $categories = $repository->index();
        
        return view('categories.index', [
            'categories' => $categories,
        ]);
    }
}

示例2:在控制器中注入存储库,并使用值对象和转换器

<?php

namespace App\Http\Controllers;

use App\Http\Requests\StoreCouponRequest;
use Illuminate\Contracts\Support\Renderable;
use Davesweb\BricklinkApi\Repositories\CouponRepository;
use Davesweb\BrinklinkApi\Transformers\CouponTransformer;

class CouponController extends Controller
{
    public function store(StoreCouponRequest $request, CouponRepository $repository, CouponTransformer $transformer): Renderable
    {
        $coupon = $transformer->toObject($request->validated());
        
        $newCoupon = $repository->store($coupon);
        
        return redirect()->back()->with('success', 'Succesfully created the new coupon ' . $newCoupon->couponId . '.');
    }
}

有关如何使用存储库和值对象的文档,请参阅 davesweb/bricklink-api 包。