Ben*_*Ben 5 api-platform.com symfony4
我想在Api-Platform中使用YAML而不是注释.
我没有使用Api-Platform发行版,而是将api-pack添加到我现有的Symfony Flex项目中(composer req api).
文档说YAML文件应该在,/config/api_platform/resources.yaml但我的实体没有被发现.
我应该在其他地方配置什么?
谢谢你,本
Nek*_*Nek 14
您唯一需要做的就是添加以下配置:
api_platform:
mapping:
paths: ['%kernel.project_dir%/config/api_platform/resources']
Run Code Online (Sandbox Code Playgroud)
我使用一个名为resourcesinside 的子文件夹将配置拆分为多个文件.以下是配置示例:
article.yaml
# /config/api_platform/resources/article.yaml
App\Domain\Article:
attributes:
normalization_context:
groups: ['article_read']
collectionOperations: []
itemOperations:
get:
method: 'GET'
put:
method: 'PUT'
Run Code Online (Sandbox Code Playgroud)
user.yaml(配置中包含更多内容)
# This file is inside /config/api_platform/resources/user.yaml
App\Domain\User:
attributes:
normalization_context:
groups: ['user_read']
denormalization_context:
api_allow_update: true
groups: ['user_write', 'user_avatar_write']
filters:
- 'App\Application\ApiPlatform\Filters\DeletedFilter'
collectionOperations:
get:
method: 'GET'
access_control: is_granted('VIEW', object)
normalization_context: {'groups': ['user_read_collection']}
post:
method: 'POST'
access_control: is_granted('CREATE', object)
normalization_context:
groups: ['user_post']
itemOperations:
get:
method: 'GET'
access_control: is_granted('VIEW', object)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2478 次 |
| 最近记录: |