Entenda a estrutura de diretorios de uma aplicacao Ruby On RailsQuando estamos iniciando em Ruby On Rails, e sempre uma boa ideia nos acostumarmos com a estrutura de diretorios que e criada. Veja abaixo uma breve descricao de cada um destes diretorios:appContem todo o codigo especifico a uma determinada aplicacao Ruby On Rails. E dentro deste diretorio que teremos os controllers, os models, as views e as classes auxiliares (helpers).app/controllersContem as classes de controllers (parte controle do MVC). Em Ruby On Rails, um controlador herda de ActionController::Base. E pratica dar nomes aos controllers de forma que eles representam o modelo que eles controlam seguido por _controller.rb (Ex: cadastro_controller.rb). Se esta regra nao for seguida, o mapeamento automatico de URL nao ocorrera.app/modelsContem as classes de dominio (modelo) da aplicacao. Estas classes devem ter nomes na seguinte forma: blog.rb, cadastro.rb, etc. Geralmente classes de modelo herdam de ActiveRecord::Base.app/viewsContem os arquivos de template para a visao (camada view do MVC). E comum dar nomes as views de acordo com os controladores cujos resultados elas exibirao. Assim, uma view que sera exibida na action index de um controller ClienteController devera ter o nome de cliente/index.rthml.app/helpersContem classes auxiliares e helpers, tais como cadastro_helper.rb.app/apisContem classes API para web services.configContem arquivos de configuracao para o ambiente Rails, o mapa de roteamento (routing map), banco de dados e outras dependencias.componentsGuarda pequenas aplicacoes auto-contidas compostas de controllers, models e views.dbContem o esquema de banco de dados em schema.rb. O diretorio db/migrate contem todas as sequencias de migracoes para seu esquema.libContem bibliotecas especificas a uma determinanda aplicacao. Basicamente, qualquer codigo customizado que nao se encaixe na categoria controllers, models ou helpers, deve ser colocado neste diretorio. Alem disso, este diretorio esta no load path do Rails.publicEste diretorio fica disponivel para o servidor web. Ele contem sub-diretorios para imagens, folhas de estilos CSS e codigos JavaScript. E aqui que temos os dispatchers (despachadores) e os arquivos HTML padrao.scriptContem os scripts de automacao e geracao.testContem testes de unidade e funcionais, juntamente com fixtures.vendorContem bibliotecas externas que a aplicacao pode precisar. Aqui tambem incluimos o sub-diretorio plug-ins. Este diretorio esta no load path. Quando estamos iniciando em Ruby On Rails, e sempre uma boa ideia nos acostumarmos com a estrutura de diretorios que e criada. Veja abaixo uma breve descricao de cada um destes diretorios:appContem todo o codigo especifico a uma determinada aplicacao Ruby On Rails. E dentro deste diretorio que teremos os controllers, os models, as views e as classes auxiliares (helpers).app/controllersContem as classes de controllers (parte controle do MVC). Em Ruby On Rails, um controlador herda de ActionController::Base. E pratica dar nomes aos controllers de forma que eles representam o modelo que eles controlam seguido por _controller.rb (Ex: cadastro_controller.rb). Se esta regra nao for seguida, o mapeamento automatico de URL nao ocorrera.app/modelsContem as classes de dominio (modelo) da aplicacao. Estas classes devem ter nomes na seguinte forma: blog.rb, cadastro.rb, etc. Geralmente classes de modelo herdam de ActiveRecord::Base.app/viewsContem os arquivos de template para a visao (camada view do MVC). E comum dar nomes as views de acordo com os controladores cujos resultados elas exibirao.