Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Duvida sobre Controllers e model

Professor,

uma pequena dúvida surgiu, voce diz que o usuario final faz uma requisição e a mesma vai para controllers, que pega essa solicitação e dispara para model alguma regra de negocio se existir. No curso de ruby and rails, eu tirei minha regra de negocio da pagina (view) e coloquei elas dentro do controller conforme foi feito nos videos passados do curso.. ai fiquei um pouco com duvida em relação a isso....!

eu chamo meu model no controller..mas minha duvida é, deveria estar a regra de negocio dentro do controller msm?

class ProdutosController < ApplicationController def index @produtos_por_nome = Produto.order(:nome) @produtos_por_preco = Produto.order(:preco) end end

1 resposta
solução!

Étori, tudo bem?

Então varia muito do caso, eu não vou entrar em muitos detalhes mas uma aplicação real costuma ir um pouco além do pattern MVC. Então você poderia por exemplo pra esses caras criar um Presenter.

Mas nesse seu caso como é questão de ordem você jogar essa lógica para o Model usando scope.

Então seu Model teria algo como:

scope :ordered_by_name, -> { order(name: :asc) }

E no seu Controller você só chamaria:

Produto.ordered_by_name

Dá uma olhada no link que mandei porque tem outros exemplos também!

Bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software