Devo usar arquivos .erb ou .rhtml para uma aplicação Rails em que existe toda a lógica Controller em Views?

StackOverflow https://stackoverflow.com/questions/821010

Pergunta

Eu estou apenas começando a aprender Rails. Eu criei um aplicativo Rails vazio. E, em vez de escrever um Controller, eu quero colocar toda a minha lógica Controller em meus pontos de vista, em vez de nas aulas de controlador separado.

Para fazer isso, que eu deveria usar arquivos .erb ou arquivos .rhtml e qual é a diferença?

Foi útil?

Solução

Em primeiro lugar, eles são praticamente a mesma coisa, mas você deve usar o novo formato de nomenclatura padrão de .html.erb

Em segundo lugar, parar o que está fazendo e repensar tudo !!!!!

O ponto de MVC é separar lógica de exibição e vice-versa. A maioria de sua lógica deve estar em seus modelos e o controlador apenas deve facilitar agarrar essa lógica e passá-la para seus pontos de vista.

Você não deve fazer nada em seus diferentes exibir os dados vistas.

Outras dicas

"Um cliente me pediu para construir e instalar um sistema de prateleiras personalizado. Eu estou no ponto onde eu preciso pregá-la, mas eu não tenho certeza do que usar a bater os pregos na.

Devo usar um sapato velho ou uma garrafa de vidro?

No seu caso eu iria para o garrafa de vidro .

Nos novos trilhos 3.0 arquivos .rhtml será suportado. .html.erb é o novo padrão.

Eu entendo que você tem um pequeno aplicativo e padrões realmente não se aplicar a você, mas que é o ponto inteiro de MVC. A lógica deve ir para o controlador / modelo ea vista é estritamente para apresentação.

A resposta simples para a sua pergunta não é. Não, você não deve colocar lógica do controlador nas vistas. Se você não precisa de controladores, então você provavelmente fazer trilhos não precisa. Eu sei que não é a resposta que você quer, mas, francamente, você está errado, pura e simples. Se você quer aprender o framework Rails, então o que lhe foi dito aqui é correto e para fazê-lo seu caminho seria simplesmente então significar tanto desaprender o que você fez ou que significaria tornar-se um mau desenvolvedor.

Essa é a maneira que é, o resto é agora a você.

Sim, você está correto em que os criadores de trilhos nunca afirmou que não se deve usar rails para aplicativos menores, mas eles têm afirmado repetidamente a importância do controlador.

Eu criei um aplicativo Rails vazio. E, em vez de escrever um Controller, eu quero colocar toda a minha lógica Controller em meus pontos de vista, em vez de nas aulas de controlador separado.

Só por curiosidade, que tipo de lógica que você está pensando em colocar em seus pontos de vista? Se for lógica de apresentação, em seguida, que é uma coisa, mas se for regras de negócio, o carregamento de dados a partir de um banco de dados, arquivo XML, web service / REST baseada em seguida, você está violando os princípios fundamentais de trilhos. Já ouviu falar de ASP (Active Server Pages Classic)? Quadros têm evoluído para além de que para superar as deficiências e armadilhas como ASP para permitir que você não misturar apresentação e código. Se você jogá-lo todos juntos, como é que você unidade de teste seu código? Outro princípio fundamental de trilhos é por isso que está embutido no próprio framework ao contrário de outros frameworks web.

Eu quero aprender como usar o framework Ruby "padrão"

Em suas respostas você continua mencionando que você quer aprender o framework Ruby padrão? Se este for o caso, por que não usar IRB então? Rails não é parte do framework Ruby padrão. Na verdade, você provavelmente vai aprender muito mais sobre o Ruby usando irb, então você vai Rails. Uma vez que você se familiarizou com Ruby em seguida, tomar sobre trilhos.

Eu concordo com os outros e se você estiver indo para tomar o tempo para aprender um quadro, em seguida, aprender o certo e como o criador pretendia, caso contrário, você está faltando o ponto e você não vai ver por trilhos é tal bom web framework para começar. O que você está esperando para realizar pode ser feito em uma série de tecnologias web: ASP, ASP.Net, PHP, JSP, Perl, mas você escolhe para aprender Ruby e Rails, portanto, não fazem o mesmo que você poderia em qualquer um dos outras tecnologias web.

A adesão a MVC é a maneira de proceder para construir um aplicativo. Se não tiver certeza por que controlador é necessário, em seguida, fazer a pesquisa. eu tenho enfrentado manutenção de código, onde as cautelas são incorporados na camada de apresentação. É uma farsa para começar qualquer esforço de engenharia sem uma compreensão completa da correcta, tempo testado metodologia. É como tentar construir uma casa usando nenhuma fundação ou projeto.

Nada, realmente. É apenas uma mudança de filosofia entre Rails 1 e Rails 2. Antes Rails 2, você tinha file.rhtml, file.rxml e file.rjs. No Rails, que mudou para file.content_type.template_engine. Assim, com file.html.erb, o tipo de conteúdo é html e o motor do modelo é ERb. rxml é agora xml.builder e RJS deve agora (principalmente) ser js.rjs

Nos novos trilhos 3.0 arquivos .rhtml será suportado. .html.erb é o novo padrão.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top