api-platform / api-platform/core
[GraphQL] Add a `visibily` attribute in `ApiProperty` to hide fields depending on the context
- Ngôn ngữ chính
- PHP
- Star
- 2.6k
- Fork
- 980
- Merge trung bình
- 2 ngày 4 giờ
- Pull request đã merge (30 ngày)
- 49
Mô tả
**Description**
The PR https://github.com/api-platform/core/pull/3227 has added a `security` attribute in `ApiProperty` for not using a property if it is not allowed.
If the user wants to hide the field completely from the GraphQL schema, we could introduce a `visibility` attribute like GraphQL Ruby does (https://graphql-ruby.org/authorization/visibility).
For REST, it could have the same effect as the `security` attribute.
**Example**
```php
class Offer
{
/**
* @var string The dummy secret property, only readable/writable by specific users
*
* @ApiProperty(visibility="is_granted('ROLE_ADMIN')")
*/
private $adminOnlyProperty;
}
```
Hướng dẫn đóng góp
Đánh giá
Issue này chưa được đánh giá.