Também não gosto de ifs para problemas que envolvem tipos (tipos de usuário, tipos de produtos, tipos de localidades) porque vou precisar alterar em muitos lugares diferentes se adicionar um tipo novo.
E acho que o mesmo problema se repete nas views. Se além do Admin e do user passarmos a ter um editor, terá que ser feita uma nova view para cada. E por fim, eu acho bem chato ter mais de um ponto de alteração de código, algo que me parece inevitável trabalhando com duas views diferentes para coisas semelhantes. A POO serve para resolvermos problemas que envolvem tipos. Em 19 de outubro de 2012 15:41, Everton Zamignan Pabon <[email protected]>escreveu: > O assunto é interessante.. percebo que cada um está tratando da forma que > lhe convém melhor. > Evito ao máximo if's na view então geralmente quando trata-se da mesma > view faço algo assim na action: > > if($usuario->permissao == 'Administrador') > > $dados = ORM::factory('pedidos')->todos(); > > else > > $dados = ORM::factory('pedidos')->porCliente($usuario->id); > > > $view = View:factory('pedidos')->bind('dados', $dados); > > > > > > > Em sexta-feira, 19 de outubro de 2012 14h38min56s UTC-3, Everton Zamignan > Pabon escreveu: > >> Olá pessoal, boa tarde. >> >> Estou trabalhando num sistema onde em meu escopo de autorização os >> usuários podem assumir os seguintes papeis: "Administrador" ou "Normal". >> (haverá mais papeis futuramente). >> Pelo perfil do sistema, as páginas (leia-se views) são praticamente >> iguais tanto para o Administrador como para o usuário Normal. >> Geralmente o Administrador tem apenas um ou dois botões a mais na View >> então eu uso a mesma View para ambos, exceto quando essa View for muito >> diferente/complexa. >> >> Acontece que a todo momento as Actions tem que ficar decidindo o que >> fazer de acordo com o papel do usuário. >> >> Essa minha introdução é pra perguntar se essa forma de trabalhar está >> correta ou >> eu devo criar Actions e Views (e até Controllers) distintas de acordo com >> a papel, não importando o fato de serem bem semelhantes. >> >> Agradeço qualquer opinião. >> > -- > Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana > Php" dos Grupos do Google. > Para ver esta discussão na web, acesse > https://groups.google.com/d/msg/kohana-php/-/hLZC2HATerQJ. > > Para postar neste grupo, envie um e-mail para [email protected]. > Para cancelar a inscrição nesse grupo, envie um e-mail para > [email protected]. > Para obter mais opções, visite esse grupo em > http://groups.google.com/group/kohana-php?hl=pt-BR. > -- Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos Grupos do Google. Para postar neste grupo, envie um e-mail para [email protected]. Para cancelar a inscrição nesse grupo, envie um e-mail para [email protected]. Para obter mais opções, visite esse grupo em http://groups.google.com/group/kohana-php?hl=pt-BR.
