Documentation




1. Criando Relacionamento 1:n





Para usar a opção de relacionamentos deve-se fazer o relacionamento entre tabelas innoDB ou então usar o padrão de nomes de colunas definido no <pasta_crudin>/xml/core.xml.


Confira abaixo um exemplo de relacionamento de 1:n entre tabelas

CREATE TABLE `news` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`id_news_category` int(11) NOT NULL,
`date_creation` datetime NOT NULL,
`title` varchar(255) NOT NULL,
`lead` text NOT NULL,
`news` text NOT NULL,
`status` enum('A','I') NOT NULL,
PRIMARY KEY (`id`),
KEY `id_news_category` (`id_news_category`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;


CREATE TABLE `news_category` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`category` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

ALTER TABLE `news`
ADD CONSTRAINT `news_ibfk_1` FOREIGN KEY (`id_news_category`) REFERENCES `news_category` (`id`);


Caso queira usar tabelas do tipo MyISAM, ou qualquer outro tipo que não seja InnoDB você deve criar a chave estrangeira com o seguinte padrão: id_<nome da tabela de referencia>, exemplificando:

id_news_category

onde: id é primary key na tabela news_category

OBS: É aconselhável usar o padrão InnoDB para criação de relacionamentos entre tabelas





2. Campo para upload de imagens

O Crudin identifica automaticamente as colunas adequadas para uso de upload de imagens.
Para isso você deve definir um padrão de nome de colunas para upload de imagens em: <pasta_crudin>/xml/core.xml



<!-- Prefixo no campo das tabelas para upload de imagens -->
<prefixImageField>image</prefixImageField>


Desta maneira os exemplos a seguir são considerados como campo de upload de imagem:

image
image_1
image_news
image1
imageNews
imagem
imagem_1
etc..





3. Campo para upload de arquivos

O Crudin identifica automaticamente as colunas adequadas para uso de upload de arquivos.
Para isso você deve definir um padrão de nome de colunas para upload de arquivos em: <pasta_crudin>/xml/core.xml

<!-- Prefixo no campo das tabelas para upload de arquivos -->
<prefixImageField>file</prefixImageField>


Desta maneira os exemplos a seguir são considerados como campo de upload de imagem:

file
file_1
file_pdf
fileDownload
etc..

4. Campo de Opções

Com o Crudin é possível usar campos do tipo ENUM para gerar menus dropdown na interface de gestão
Para isso você deve definir as opções de valores para colunas do tipo ENUM em: <pasta_crudin>/xml/core.xml

<!-- Configuração dos valores para campos Enum -->
<EnumConfiguration>

<is_array>true</is_array>

<A>Publicado</A>
<I>Nao publicado</I>

<S>Sim</S>
<N>Nao</N>

<Opcao1>Texto para opcao 1</Opcao1>
<Opcao2>Texto para opcao 2</Opcao2>
<Opcao3>Texto para opcao 3</Opcao3>

</EnumConfiguration>


Desta maneira colunas do tipo enum que tiverem suas configurações inseridas são exibidas como menu dropdown para escolha