quickclack/rest-attribute-bundle 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

quickclack/rest-attribute-bundle

最新稳定版本:v1.0.1

Composer 安装命令:

composer require quickclack/rest-attribute-bundle

包简介

Modern REST support for Symfony 6.4–7.2 using attributes

README 文档

README

Modern REST support for Symfony 6.4–7.2 using attributes. This bundle simplifies the implementation of RESTful APIs by using PHP attributes for route parameters, making your Symfony controllers cleaner and easier to maintain.

Features

  • Automatic parameter fetching from query, request, or route.
  • Custom validation of parameters using Symfony Validator.
  • Support for Symfony versions 6.4–7.2.

Installation

composer require quickclack/rest-attribute-bundle

Install the bundle via Composer:

After installation, add to config/bundles.php:

return [
    Quickclack\RestAttributeBundle\RestAttributeBundle::class => ['all' => true],
];

Symfony 6.4–7.2 Compatibility

This bundle supports Symfony 6.4 through 7.2, so make sure you have a compatible Symfony version installed.

Usage

The bundle provides a simple way to fetch parameters from request queries and route parameters with automatic validation.

Example

namespace App\Controller;

use Symfony\Component\HttpFoundation\JsonResponse;
use Quickclack\RestAttributeBundle\Attribute\RouteParam;
use Quickclack\RestAttributeBundle\Request\ParamFetcher;

class TestController
{
    #[Get('/api/test')]
    #[RouteParam(name: 'name', from: 'query', type: 'string')]
    #[RouteParam(name: 'age', from: 'query', type: 'int', default: 0, required: false)]
    public function testAction(ParamFetcher $fetcher): JsonResponse
    {
        return new JsonResponse([
            'name' => $fetcher->get('name'),
            'age' => $fetcher->get('age')
        ]);
    }
}

Testing

composer install
php bin/phpunit

License

This bundle is licensed under the MIT License. See the LICENSE file for more details.

Changelog

All notable changes to this project will be documented in the CHANGELOG.md.

统计信息

  • 总下载量: 4
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-05-01