No MVC qual a forma correta de pegar dados inserido na view?
1 - Eu crio um método no controller que pega esses dados e cria um objeto.
2 - Crio esse mesmo método na view, crio o objeto também na view e no controller eu chamo o método.
3 - Crio esse método passando os dados soltos, um monte de variável que será criado e setado no controller?
4 - Outro.
Mas foi exatamente por isso a pergunta. Rsrs…
Em alguns tutos que li, vi os 3 primeiros casos.
Porém meu professor disse que não deve ser instanciado nenhum objeto ‘model’ na view, como no segundo caso. Porém, mandar só atributos da view para controller achei meio gambiarra.
Daí a pergunta…
Particularmente, prefiro a abordagem de ter helpers (POJOs que representam as entities, mas para as camadas view/controller) e usar DTO (onde encapsulo tudo o que quero que vá ou venha da view para a controller.
Eu comecei a trabalhar com um arquiteto, lá em 2010 e ele sempre baseou suas construções sobre DTO (alguns chamam de TO). É uma abordagem mais engessada, mas acho bem bacana e fácil de se fazer, pois dá para se trabalhar com elementos genéricos, herança e implementação.
Se o objetivo é trabalhar com SPA, você monta objetos JS que representam o tal DTO e, como há suporte para herança no JS, isso facilita muito a vida.