#!/usr/bin/ruby puts

SunDi3yansyah


puts

App Server, Database App, Web App

Memulai Dengan Rails

| Comments | Cahyadi Triyansyah Cahyadi Triyansyah

Sebelumnya kita udah tau bagaimana cara instal Ruby, bagaimana cara instal Rails, nah kali ini bagaimana cara memulai menggunakan Rails intinya artikel ini menganalkan struktur komponen yang ada di Rails.

Pada dasarnya Rails memiliki struktur kerangka kerja sebagai berikut:

Terminal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
.
├── app
│   ├── assets
│   │   ├── config
│   │   ├── images
│   │   ├── javascripts
│   │   │   └── channels
│   │   └── stylesheets
│   ├── channels
│   │   └── application_cable
│   ├── controllers
│   │   └── concerns
│   ├── helpers
│   ├── jobs
│   ├── mailers
│   ├── models
│   │   └── concerns
│   └── views
│       └── layouts
├── bin
├── config
│   ├── environments
│   ├── initializers
│   └── locales
├── db
├── lib
│   ├── assets
│   └── tasks
├── log
├── public
├── test
│   ├── controllers
│   ├── fixtures
│   │   └── files
│   ├── helpers
│   ├── integration
│   ├── mailers
│   ├── models
│   └── system
├── tmp
│   └── cache
│       └── assets
└── vendor

Secara keseluruhan memiliki struktur sebagai berikut:

Terminal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
.
├── app
│   ├── assets
│   │   ├── config
│   │   │   └── manifest.js
│   │   ├── images
│   │   ├── javascripts
│   │   │   ├── application.js
│   │   │   ├── cable.js
│   │   │   └── channels
│   │   └── stylesheets
│   │       └── application.css
│   ├── channels
│   │   └── application_cable
│   │       ├── channel.rb
│   │       └── connection.rb
│   ├── controllers
│   │   ├── application_controller.rb
│   │   └── concerns
│   ├── helpers
│   │   └── application_helper.rb
│   ├── jobs
│   │   └── application_job.rb
│   ├── mailers
│   │   └── application_mailer.rb
│   ├── models
│   │   ├── application_record.rb
│   │   └── concerns
│   └── views
│       └── layouts
│           ├── application.html.erb
│           ├── mailer.html.erb
│           └── mailer.text.erb
├── bin
│   ├── bundle
│   ├── rails
│   ├── rake
│   ├── setup
│   ├── spring
│   ├── update
│   └── yarn
├── config
│   ├── application.rb
│   ├── boot.rb
│   ├── cable.yml
│   ├── database.yml
│   ├── environment.rb
│   ├── environments
│   │   ├── development.rb
│   │   ├── production.rb
│   │   └── test.rb
│   ├── initializers
│   │   ├── application_controller_renderer.rb
│   │   ├── assets.rb
│   │   ├── backtrace_silencers.rb
│   │   ├── cookies_serializer.rb
│   │   ├── filter_parameter_logging.rb
│   │   ├── inflections.rb
│   │   ├── mime_types.rb
│   │   └── wrap_parameters.rb
│   ├── locales
│   │   └── en.yml
│   ├── puma.rb
│   ├── routes.rb
│   ├── secrets.yml
│   └── spring.rb
├── config.ru
├── db
│   └── seeds.rb
├── Gemfile
├── Gemfile.lock
├── lib
│   ├── assets
│   └── tasks
├── log
├── package.json
├── public
│   ├── 404.html
│   ├── 422.html
│   ├── 500.html
│   ├── apple-touch-icon.png
│   ├── apple-touch-icon-precomposed.png
│   ├── favicon.ico
│   └── robots.txt
├── Rakefile
├── README.md
├── test
│   ├── application_system_test_case.rb
│   ├── controllers
│   ├── fixtures
│   │   └── files
│   ├── helpers
│   ├── integration
│   ├── mailers
│   ├── models
│   ├── system
│   └── test_helper.rb
├── tmp
│   └── cache
│       └── assets
└── vendor

Ini adalah untuk versi Rails 5.1.2, akan saya jabarkan sedikit tentang fungsi sebagaian file atau folder yang berada di root dokumen Rails tersebut.

  • app berisi assets, channels, controllers, helpers, jobs, mailers, models, views. Kalian akan lebih banyak untuk membuat codingan disini.
  • bin berisi script rails yang digunakan untuk menyiapkan, memperbarui, menyebarkan, atau menjalankan aplikasi.
  • config berisi konfigurasi aplikasi, database, dan masih banyak lagi.
  • config.ru konfigurasi untuk server berbasis Rack yang digunakan untuk memulai aplikasi.
  • db berisi skema database kalian saat ini, serta migrasi database.
  • Gemfile & Gemfile.lock file ini memungkinkan kalian menentukan dependensi gem apa yang dibutuhkan untuk aplikasi Rails kalian, file ini digunakan oleh gem Bundler.
  • lib modul yang diperluas untuk aplikasi kalian.
  • log file log aplikasi.
  • package.json file ini untuk kolaborasi dengan nodejs, file ini baru saja di tambahkan di rails versi 5.1 keatas.
  • public satu-satunya folder yang dilihat oleh client. Berisi file statis dan asset yang dikompilasi.
  • Rakefile file ini menempatkan dan memuat perintah yang bisa dijalankan dari command line atau terminal.
  • README.md ini adalah instruksi manual singkat untuk aplikasi kalian.
  • test tes unit, perlengkapan, dan alat uji lainnya.
  • tmp file sementara (seperti cache dan file pid).
  • vendor tempat untuk semua kode pihak ketiga, ini termasuk gem yang telah dipatenkan.
  • .gitignore file ini memberitahu git file mana yang harus diabaikan.
Comments