Quando você usa o script auxiliar trilhos para criar seu aplicativo, ele cria a estrutura de diretório inteira para a aplicação. Rails sabe onde encontrar as coisas de que necessita dentro dessa estrutura, para que você não tem que dizer a ele.

Aqui está uma visão de alto nível da árvore de diretórios criada pelo script auxiliar no momento da criação de aplicativos. Com exceção de pequenas alterações entre as versões, cada projeto Rails terá a mesma estrutura, com as mesmas convenções de nomenclatura. Esta consistência dá-lhe uma enorme vantagem, você pode mover-se rapidamente entre os projetos Rails sem reaprendendo a organização do projeto.

Para entender essa estrutura de diretório vamos usar programa demonstrativo
aplicativo criado no capítulo de instalação. Isto pode ser criado usando um comando auxiliar simples c: \ ruby ​​\> rails demo.

Agora vá para demonstração diretório raiz do aplicativo da seguinte forma:

Código:

C: \ ruby ​​\> cd demo
C: \ ruby ​​\ demo> dir


Você vai encontrar uma estrutura de diretórios da seguinte forma:

Código:

demo/
..../app
......../controller
......../helpers
......../models
......../views
............../layouts
..../components
..../config
..../db
..../doc
..../lib
..../log
..../public
..../script
..../test
..../tmp
..../vendor
README
Rakefile


Agora vamos explicar o objetivo de cada diretório

app: Este organiza componentes de sua aplicação. Tem subdiretórios que mantêm a vista (vista e ajudantes), controlador (controladores), ea lógica de negócios backend (modelos).

app / controladores: Os controladores subdiretório é onde o Rails procura para encontrar classes do controlador. Um controlador processa um pedido de web do usuário.

app / ajudantes: Os ajudantes subdiretório detém quaisquer classes
auxiliares utilizadas para auxiliar o modelo, ver e classes do
controlador. Isso ajuda a manter o modelo, vista e código controlador de pequeno porte, focada e organizada.

app / models: Os modelos subdiretório contém as classes que modelo e enrole
os dados armazenados no banco de dados do nosso aplicativo. Na maioria dos frameworks, essa parte do pedido pode crescer bastante complicado, tedioso, verbose, e propenso a erros. Rails torna simples morto!

app / view: As opiniões subdiretório contém os modelos de exibição para
preencher com os dados da nossa aplicação, converter para HTML, e
retornar para o navegador do usuário.

app / view / layouts: Contém os arquivos de modelo para layouts para ser usado com pontos de vista. Estes modelos de cabeçalho comum / método rodapé de envolver pontos de vista. Em sua opinião, definir um layout usando o layout : default e criar um arquivo chamado default.rhtml. Dentro default.rhtml, chamada <%% de rendimento> para tornar a vista usando esse layout.

componentes: Este diretório contém componentes minúsculos auto-suficientes
aplicações que o modelo de pacote, vista e controlador.

config: Este diretório contém pequena quantidade de código de configuração que
sua aplicação precisa, incluindo a configuração do banco de dados (em
database.yml), sua estrutura de ambiente Rails (environment.rb), e
encaminhamento de pedidos vindos da web (routes.rb). Você
também pode adaptar o comportamento dos três ambientes Rails para
desenvolvimento, teste e implementação com os arquivos encontrados no
diretório ambientes.
db: Normalmente, a sua aplicação Rails terá objetos do modelo que acessam tabelas de banco de dados relacionais. Você pode gerenciar o banco de dados relacional com os scripts que você criar e colocar nesse diretório.

doc: Ruby tem um quadro, chamado RubyDoc, que pode gerar automaticamente a documentação para o código que você cria. Você pode ajudar RubyDoc com comentários em seu código. Este diretório mantém todos os Ther ubyDoc gerados Rails e documentação da aplicação.

lib: Você vai colocar bibliotecas aqui, a menos que explicitamente pertencem noutros países (como bibliotecas de terceiros).

log: logs de erro aqui. Rails cria scripts que ajudam a gerenciar os registros de erros diversos. Você
vai encontrar registros separados para o servidor (server.log) e cada
ambiente Rails (development.log, test.log, e production.log).

público: Como o diretório público de um servidor web, este diretório tem
arquivos da web que não mudam, como arquivos JavaScript (públicas /
javascripts), gráficos (públicas / imagens), folhas de estilo (público /
stylesheets) e arquivos HTML ( público).

script: Este diretório mantém os scripts para iniciar e gerenciar as diversas ferramentas que você vai usar com Rails. Por exemplo, existem scripts para gerar código (gerar) e lançar o servidor web (servidor).

teste: Os testes que você escreve e aqueles Rails cria para você ir todos aqui. Você
vai ver um subdiretório para zomba (zomba), testes de unidade
(unidade), utensílios (utensílios), e testes funcionais (funcional).

tmp: Rails usa este diretório para armazenar arquivos temporários para processamento intermediário.

Vendedor: Bibliotecas fornecidas pelo fornecedores de terceiros (como bibliotecas
ou utilitários de segurança de banco de dados além da distribuição
Rails básico) aqui.

Além destes diretórios, haverá dois arquivos disponíveis no diretório demo.

README: Este arquivo contém um detalhe básico sobre Aplicação Rail e descrição da estrutura do diretório explicado acima.

Rakefile: Este arquivo é semelhante ao Unix Makefile que contribui com a embalagem, edificação e testando o código Rails. Isso será usado pelo utilitário ancinho fornecido juntamente com a instalação do Ruby.

Spoiler :