Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Saludos!
Sempre que procuro qualquer artigo relacionado ao MVC, eu encontro coisas triviais - conteúdos que compilam as informações em modelos humanos, o que me faz desentender o MVC em si.
Vamos pautar um aplicativo onde o usuário pode registrar, logar e postar algum artigo. Ótimo. Eu gostaria de entender: devo fazer um controlador para estas três ações?
Estou tentando entender a estruturação do MVC e vejam o que eu tenho:
C:.
│
└───mvc
│ mvc
│
├───controllers
│ LoginController.php
│ RegisterController.php
│
├───models
│ LoginModel.php
│ RegisterModel.php
│
└───viewers
LoginView.php
RegisterView.php
Pergunto: para cada ação, é-se necessário um viewer/controller/model diferente?
A minha chamada:
<?php require( '../configs.php' );
$controller = new RegisterController();
echo $controller->handleNewUser();
(Obs: o exemplo acima funciona)
Viva o meu 666 post!
Eu entendi e não entendi o que você quis dizer.
Nesse caso que eu postei, quem é a entidade?
E a tríade, é o model, o view e o controller?
Posso considerar que qualquer inserção no banco de dados seja um entidade e, então, qualquer ação de inserção deve comportar a(s) tríade(s) que vão inserir algum registro?
Por exemplo: cadastrar usuário e inserir artigo. Estas duas ações tem em comum a inserção. Então, são de tríades diferentes mas comportadas por uma entidade em comum, no caso, a inserção?
Se você puder fazer suas respostas baseadas no meu exemplo, eu agradeceria. Acredito eu que tudo ficaria mais claro.
Valeu, Henrique.
Posso considerar que qualquer inserção no banco de dados seja um entidade e, então, qualquer ação de inserção deve comportar a(s) tríade(s) que vão inserir algum registro?
Não, inserção é uma AÇÃO, não uma entidade. A entidade no caso é o USUÁRIO.
E a tríade, é o model, o view e o controller?
Sim, sim...
Por exemplo: cadastrar usuário e inserir artigo. Estas duas ações tem em comum a inserção. Então, são de tríades diferentes mas comportadas por uma entidade em comum, no caso, a inserção?
Não, não... Está ao contrário.
Imagine:
Entidade: Usuário (possui uma tríade de CLASSES MVC: UsarioController, UsuarioModel, views que dizem respeito ao usuário)
Ações: cadastrar, atualizar, deletar, verificar existência (MÉTODOS em contoller, model e algumas páginas de exibição na view)
>
Imagine:
Entidade: Usuário (possui uma tríade de CLASSES MVC: UsarioController, UsuarioModel, views que dizem respeito ao usuário)
Ações: cadastrar, atualizar, deletar, verificar existência (MÉTODOS em contoller, model e algumas páginas de exibição na view)
Era exatamente isso que estava mal-posicionado na minha cabeça.
Muitíssimo obrigado, Henrique!
Problema resolvido. ✔
Eu criei essa mesma arquitetura sem conhecer o MVC, inclusive eu criei com PHP estruturado. O modo é o mesmo, sqn!
Não, você está confundindo um pouco.
Normalmente uma tríade MVC diz respeito a uma entidade.
Todas as ações inerentes àquela entidade são colocadas dentro da mesma tríade.