Ruby on Rails - Ruby on Rails Directory Structure - ruby on rails tutorial - rails guides - rails tutorial - ruby rails
What is Directory Structure?
- The directory structure is the organization of files into a hierarchy of folders.
- It should be stable and scalable;
- It should not fundamentally change, only be added to. Computers have used the folder metaphor for decades as a way to help users keep track of where something can be found.
learn ruby on rails tutorial - ruby on rails directory structure - ruby on rails example
Directory Structure in Ruby on Rails:
- Ruby on Rails is a web framework written in Ruby.
- It is one of the most famous web frameworks and makes getting started with development so easy.
How to explain the default files and folders generated by Ruby on Rails:
- To create a new Rails application, all we have to do is run the following command:
- The above command generates the directory structure.
- It might change, if you are using a version of Rails.
Types of Rails version in directory structure:
- Rails 4.2.4 directory structure
- Rails 5 directory structure
ruby on rails tutorial tags - ruby , rail , ruby on rails , rail forum , ruby on rails tutorial , ruby tutorial , rails guides , rails tutorial , learn ruby
Rails 4.2.4 directory structure
- We can find the version installed in your system by typing this in the console
Sample code:
Rails 5 directory structure
- On creating a Rails application, the entire Rails directory structure is created.
- We will explain Rails 5 directory structure here.
- The jtp directory has a number of auto-generated files and folders that comprises the structure of Rails application.
learn ruby on rails tutorial - ruby on rails directory structure - ruby on rails example
- Every files and folders present in the above directory.
File/Folder | Description |
---|---|
app | It works as the remainder of this directory. Basically it organizes our application component. It holds MVC. |
app/assets | This folder contains static files required for application's front-end grouped into folders based on their type. |
app/controllers | All the controller files are stored here. A controller handles all the web requests from the user. |
app/helpers | It contains all the helper functions to assist MVC. |
app/mailers | It contains mail specific functions for the application. |
app/models | It contains the models and data stored in our application's database. |
app/views | This folder contains the display templates to fill data in our application. |
bin | It basically contains Rails script that start your app. It can also contain other scripts use to setup, upgrade or run the app. |
config | It configures our application's database, routes and more. |
db | It contains our current database schema and database migrations. |
lib | It contains extended module for your application. |
log | It contains application log files. |
public | It contains static files and compiled assets. This is the only folder seen by the world. |
test | It contains unit tests, other test apparatus and fixtures. |
tmp | It contains temporary files like cache and pid files. |
vendor | It contains all third-party code like vendor gems. |
Gemfile | Here all your app's gem dependencies are declared. It is mandatory as it includes Rails core gems among other gems. |
Gemfile.lock | It holds gems dependency tree including all versions for the app. |
README.md | It is a brief instruction manual for your application. |
Rakefile | It locates and loads tasks that can be run from the command line. |
config.ru | Rack configuration for Rack based servers used to start the application. |