Versões comparadas
Chave
- Esta linha foi adicionada.
- Esta linha foi removida.
- A formatação mudou.
O formulário CRUD gerado pelo diagrama de dados pode variar dependendo do relacionamento das tabelas do banco de dados, os classes. os tipos de relacionamentos são:
- 1to1, a entidade de uma tabela se referencia obrigatoriamente apenas uma unidade da outra;
- 1toN, uma das entidades da tabela A pode referenciar várias unidades da tabela B, porém, do outro lado, cada uma das várias unidades da tabela B só podem estar ligada a uma entidade da tabela A;
- NtoM, neste tipo de relacionamento cada entidade, de ambos os lados, podem referenciar múltiplas unidades da outra.
Relacionamento 1-1
No diagrama de dados, a forma que é definida o relacionamento 1-1 apresenta-se da seguinte maneira:
Image Modified
Figura 1.1 - Relacionamento 1-1
No exemplo acima temos duas classes, onde a classe Carro tem 4 atributos (id, marca, modelo e placa) e a classe Cliente tem 3 atributos (id, nome e cpf) mais a chave estrangeira entidade da classe carroCarro.
Edição das views
Após fazer a geração da CRUD em cada classe, elas se apresentam da seguinte maneira nas suas respectivas views:
Image Modified
Figura 1.2 - Formulário CRUD Web da Edição do formulário da classe Cliente
Image Modified
Figura 1.3 - Formulário CRUD Web Edição do formulário da classe Carro
Adicionar ou editar dados
Na hora de Após executar o projeto e acessar o formulário da CRUD, quando for adicionar/editar um dado será mostrado os formulários CRUD, eles serão apresentadas da seguinte maneira:
Image Modified
Figura 1.4 - Adicionar/Editar dado no formulário Formulário web da classe Carro
Image Modified
Figura 1.5 - Adicionar/Editar dado no formulário Formulário da classe Cliente
Os itens inseridos na view Carros serão exibidos em uma caixa de seleção na view Cliente, permitindo o relacionamento de um cliente que possui um carro específico.
Informações | ||
---|---|---|
| ||
Acesse o link Caixa de seleção dinâmica para mais informações sobre o componente. |
Relacionamento 1-n
O relacionamento 1-n está representado no exemplo abaixo do diagrama de dados:
Image Modified
Figura 2.1 - Relacionamento 1-n
No exemplo acima, um artista pode possuir diversos álbuns. A classe Artista tem dois atributos, o id e o nome, enquanto a classe Álbum possui os atributos id, título e a chave estrangeira entidade da classe artistaArtista.
Edição das views
Após fazer a geração da CRUD em gerar os CRUD de cada classe, elas se apresentam da seguinte maneira quando são abertas na área de edição da view:
Image Modified
Figura 2.2 - Formulário CRUD da Edição do formulário da classe Artista
Image Modified
Figura 2.3 - Formulário CRUD Edição do formulário da classe Álbum
Adicionar ou editar dados
Devido ao relacionamento 1 para N, a página Álbum (Figura 2.4) irá exibir um caixa de seleção com os artistas cadastrados, permitindo vincular 1 álbum a 1 artista, já na página Artista (Figura 2.5) será adicionada uma grade para permitir que 1 artista possua vários álbuns.
Nesta página
title | Nessa Página |
---|
Índice |
---|
Image Modified
Image Modified
Figuras 2.4 e 2.5 - Página e Formulário e configuração do fomulário da classe Álbum
Image Removed
Image Removed
O botão + Adicionar da grade Álbum (Figura 2.6) permite inserir novos títulos desse artista, ou seja, não é necessário ir até a página Álbum para inserir o nome dos discos de um artista.
Image Added
Image Added
Figura 2.6 e 2.7 - Página e Formulário e configuração do fomulário da classe Artista
Relacionamento N-M
Quando é feito esse relacionamento é gerada Em relacionamentos N para M, uma terceira classe (de cor amarela), a mesma receberá as chaves estrangeiras correspondentes às classes que a geraram. tabela (tabela associativa) é gerada para vincular as várias relações possíveis entre ambos os lados (Figura 3.1).
Image Modified
Figura 3.1 - Relacionamento N-M
Nesse No exemplo da figura 3.1, um ator pode fazer diversos filmes, assim como um filme pode ter diversos atores. A classe filme tabela Filme tem dois atributos campos (id, nome), assim como a classe atores (id, nome)tabela Atores. Já a classe tabela FilmesAtores apresenta três atributos ( o id, a chave estrangeira da classe Filmes e a chave estrangeira da classe Atores)seu próprio id mais as chaves estrangeira das outras duas tabelas.
Edição das views
Após fazer a geração da CRUD em cada classegerar as CRUDs em cada uma das classes seguindo as configurações das figuras 3.6, 3.8 e 3.10, elas se apresentam da seguinte maneira quando são abertas na área de trabalhoedição da view:
Image RemovedImage Added
Figura 3.2 - Formulário Edição do formulário CRUD da classe FilmesFilme
Image AddedImage Removed
Figura 3.3 - Formulário Edição do formulário CRUD da classe classe Ator
Image RemovedImage Added
Figura 3.4 - Formulário Edição do formulário CRUD da classe associativa associativa FilmeAtor
Adicionar ou editar dados
Na hora de executar o projeto e acessar o formulário da CRUD, quando for adicionar/editar um dado será mostrado da seguinte maneira:
Image Removed
Figura 3.5 - Adicionar/Editar dado para classe Filmes
Image Removed
Figura 3.6 - Adicionar/Editar dado para classe Ator
Image Removed
Figura 3.7 - Adicionar/Editar dado para classe associativa FilmeAtor
Linkar dados
Existem diversas maneiras para linkar dados quando o relacionamento é n-m.
O primeiro é utilizar o campo que é gerado ao criar a CRUD das classes. Esse campo é o da chave estrangeira, mas ele precisa ser adicionado antes de ser feito a CRUD (Para saber mais, clique aqui) pois as chaves estrangeiras vão para a classe associativa. Pode ser tanto em formato de grade (Figura 3.8) quanto de lista (Figura 3.9).
Image Removed
Figura 3.8 - Linkar dado utilizando grade no formulário Filme
Image Removed
Figura 3.9 - Linkar dado utilizando lista no formulário Ator
Informações | ||
---|---|---|
| ||
O componente utilizado para linkar dados na Figura 3.9 é o Caixa de seleção múltipla. |
A segunda forma é utilizar o campo da classe associativa (na Figura 3.5 e na 3.6 é o campo FilmeAtor), que também é necessário ser adicionado antes de gerar a CRUD, Ele tem o mesmo comportamento que é apresentado na Figura 3.8. Ao clicar em adicionar será aberto um popup da respectiva chave estrangeira da tabela.
A terceira forma seria gerar o CRUD da classe associativa e fazer o link dos dados através dela. Ambos os campos são componentes do tipo Caixa de seleção dinâmica.
Image Removed
Figura 3.10 - Linkar dados através do formulário da classe associativa
Seguindo o exemplo do relacionamento N para M das tabelas Ator, Filme e da sua tabela associativa FilmeAtor. Nas configurações dos formulários de relacionamentos de Filme e Ator é possível selecionar as opções:
- List (1 to N), exemplo figura 3.7: possui uma grade (FilmeAtor) dentro do formulário de adição de Filmes que permite inserir atores, previamente cadastrados, e os exibe na listagem dessa grade com o nome do filme;
- List (N to M) Grade, exemplo figura 3.5: possui uma grade (Filme) dentro do formulário de adição dos Atores que permite inserir filmes, previamente cadastrados, e os exibe na listagem dessa grade;
- List (N to M) Lista, exemplo figura 3.7: possui uma caixa de seleção (Ator) dentro do formulário de adição de Filmes que permite adicionar atores, previamente cadastrados, e exibe seus nomes na própria caixa de seleção.
Após executar o projeto e acessar os formulários da CRUD, elas serão apresentadas da seguinte maneira:
Image Added
Image Added
Figuras 3.5 e 3.6 - Formulário e configuração do fomulário da classe Ator
Image Added
Image Added
Figuras 3.7 e 3.8 - Formulário e configuração do fomulário da classe Filme
Image Added
Image Added
Figuras 3.9 e 3.10 - Formulário e configuração do fomulário da classe FilmeAtor