Gerar formulário de cadastro


A figura a seguir ilustra formulário de cadastro dos perfis do sistema gerado pelo módulo AccessBundle.

 

Para gerar esse formulário não foi usado nenhum código php no bundle AccessBundle.  O formulário foi definido no arquivo config.yml do módulo, como ilustra a figura a seguir. 

badiu.system.access.role.data.form.config: defaultdataonpenform=enablerestrictparentkey/0
badiu.system.access.role.data.form.fields.available: name,shortname,description,timecreated,timemodified,deleted,idnumber,description,param
badiu.system.access.role.data.form.fields.enable: general=name,shortname,description&otherconf=enablerestrictparentkey,defaultroute,idnumber,param
badiu.system.access.role.data.form.fields.required: name=1
badiu.system.access.role.data.form.fields.cssclass:
badiu.system.access.role.data.form.fields.type: description=textarea&param=textarea&enablerestrictparentkey=choice
badiu.system.access.role.data.form.fields.choicelist: enablerestrictparentkey=defaultboolean
badiu.system.access.role.data.form.fields.label: name=badiu.system.access.role.name&defaultroute=badiu.system.access.defaultroute&enablerestrictparentkey=badiu.system.access.role.enablerestrictparentkey
badiu.system.access.role.data.form.fields.placeholder: defaultroute=badiu.system.access.defaultroute.placeholder

A configuração ilustrada acima define  os seguintes dados do formulário:

  • Campos que devem ser exibidos

  • Tipos de campo

  • Campos de preenchimento obrigatório

  • Texto do label que deve ser exibido

  • Texto do placeholder  

 

O endereço de acesso do formulário BADIU.NET_URL/system/access/role/add foi definido o no arquivo routing.yml 

badiu.system.access.role.add:
    pattern:  /system/access/role/add
    defaults: { _controller: BadiuSystemCoreBundle:Functionality/Badiu:addservice }

A rota aponta para o controller BadiuSystemCoreBundle:Functionality/Badiu:addservice que é padrão da Badiu.Net. Todos os formulários de cadastro de qualquer Bundle apontam para esse mesmo controller. Há um controller centralizado com as funções para todas as operações.