PM
FormReusableview, estilos e propriedades de campos no Controller
Bom dia, pessoal estou entenda usar o FormReusable fiz a criação de um classe declarei os campos e suas propriedades apenas do formulário e gostaria de chamar ele ajustar caso uma classe precise de modificações de estilo ou de campos hidden ou algo do tipo, mas não consegui fazer como quando declaro o form na própria classe. Mudanças de cabeçalho consegui como Formtitle
Como posso fazer para alterar opções como style em outra classe, tentei $this->atributo->style, parent::atributo->style e ambos acham o atributo nulo
Tentei também usar as opçoes TEntry::disablefield s e não consegui nem em uma classe nem em outra
Propriedades gerais dos atributos só que chamando a classe formreusableview.
Como posso fazer para alterar opções como style em outra classe, tentei $this->atributo->style, parent::atributo->style e ambos acham o atributo nulo
Tentei também usar as opçoes TEntry::disablefield s e não consegui nem em uma classe nem em outra
Propriedades gerais dos atributos só que chamando a classe formreusableview.
- <?php
- use Adianti\Control\TAction;
- use Adianti\Validator\TRequiredValidator;
- use Adianti\Widget\Dialog\TMessage;
- use Adianti\Widget\Form\TEntry;
- use Adianti\Widget\Form\TForm;
- use Adianti\Base\AdiantiStandardFormTrait;
- class EmpresaForm extends BootstrapFormBuilder
- {
- private static $database = 'backoffice';
- private static $activeRecord = 'Empresa';
- private static $primaryKey = 'id';
- private static $formName = 'EmpresaForm';
- public $contatos;
- public $fields;
- /**
- * Class constructor
- * Cria toda a rotina de formação de formulário HTML
- */
- public function __construct()
- {
- parent::__construct();
- // Criação de formulário
- //Validação HTML
- // Título do formulário
- parent::setFormTitle("Listagem de empresas");
- // Declaração de Campos
- //Campos padrão
- $fields [] = $empresa_id = new THidden('empresa_id');
- $fields [] = $cnpj = new TEntry('cnpj');
- $fields [] = $nome_empresa = new TEntry('nome');
- parent::addFields([$empresa_id]);
- parent::addFields([$cnpj]);
- parent::addFields([$nome_empresa]
- }
- ################################################
- <?php
- use Adianti\Control\TAction;
- use Adianti\Validator\TRequiredValidator;
- use Adianti\Widget\Dialog\TMessage;
- use Adianti\Widget\Form\TEntry;
- use Adianti\Widget\Form\TForm;
- class EmpresaController extends TPage
- {
- private static $database = 'backoffice';
- private static $activeRecord = 'Empresa';
- private static $primaryKey = 'id';
- private static $formName = 'EmpresaController';
- /**
- * Class constructor
- * Cria toda a rotina de formação de formulário HTML
- */
- public function __construct()
- {
- parent::__construct();
- // Criação de formulário
- //Declaração de Formulário
- $this->form = new EmpresaForm('EmpresaForm');
- // Título do formulário
- $this->form->setFormTitle("Empresas");
- $this->form->cnpj->style = 'height:40px; border-radius:10px;'; //Nulo
- $this->cnpj->style = 'height:40px; border-radius:10px;'; //Nulo
- }
Tem várias maneiras de obter essas variáveis, depois dê uma lida sobre "escopo de variáveis". Segue um exemplo que não vai exigir modificações no código:
Deu certo Nataniel, , verifiquei os escopos que tu sugeriu e dei um reforço na orientação objeto, obrigado pela ajuda