簡體   English   中英

Symfony fosrestbundle網址格式

[英]Symfony fosrestbundle url formming

我的路線文件看起來像

#routing.yml
user:
    type: rest
    resource:     api.user.controller
    name_prefix:  api_
loan:
    type: rest
    resource:     api.loan.controller
    name_prefix:  api_

api方法定義為:

    /**
     * Get a single user.
     *
     * @ApiDoc(
     *   output = "AppBundle\Model\User",
     *   statusCodes = {
     *     200 = "Returned when successful",
     *     404 = "Returned when the user is not found"
     *   }
     * )
     *
     * @param int $id the user id
     *
     * @return array
     *
     * @throws NotFoundHttpException when user not exist
     */
    public function getUserAction($id)
    {
        $repo = $this->model->getRepository(User::class);
        $user = $repo->find($id);

        if (!$user instanceof User) {
            throw new NotFoundHttpException('User not found');
        }

        return $user;
    }

我正在獲取網址:

api_get__user  GET   ANY   ANY   /api/{id}/user

想要擁有:/ api / user / {id}

如何在不將@Route添加到注釋中的情況下解決此問題,因為我使用的是自動路由命名。

除了使用“ name_prefix”,您還可以在routing.yml使用“ prefix”。

與方法

public function getUserAction($id) {}

以及MyBundle/Resources/config/routing.yml

user.controller:
    type: rest
    resource: "@MyBundle/Controller/UserController.php"
    prefix: 'api'

我得到了生成的路線:

get_user GET ANY ANY /api/users/{id}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM