Alternative Names
Warning: You are browsing the documentation for version 3.x which is not maintained anymore. If some of your projects are still using this version, consider upgrading.
NelmioApiDoc automatically generates the model names but the nelmio_api_doc.models.names option allows to
customize the names for some models.
Configuration
You can define alternative names for each group and area combinations: when conflicts arises, the last matching rule will be used:
1 2 3 4 5 6 7
nelmio_api_doc:
models:
names:
- { alias: MainUser, type: App\Entity\User}
- { alias: MainUser_light, type: App\Entity\User, groups: [light] }
- { alias: MainUser_secret, type: App\Entity\User, areas: [private] }
- { alias: MainUser, type: App\Entity\User, groups: [standard], areas: [private] }
In this case the class App\Entity\User will be aliased into:
MainUserwhen no more detailed rules are specifiedMainUser_lightwhen the group is equal tolightMainUser_secretfor theprivateareaMainUserfor theprivatearea when the group is equal tostandard
Tip
This allows to use normal references instead of @Model. Notably, you can specify
the groups used for a model once in config and then refer to its alternative name:
1 2 3
nelmio_api_doc:
models:
names: [ { alias: MyModel, type: App\MyModel, groups: [light] }]
1 2 3 4 5 6 7 8 9
class HomeController
{
/**
* @SWG\Response(response=200, @SWG\Schema(ref="#/definitions/MyModel"))
*/
public function indexAction()
{
}
}