Ruby on Railsを使ったアプリケーション作成の流れをまとめました.
インストールがまだの方はこちらから.
1.アプリケーションの作成
早速railsコマンドを実行します.
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 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 |
$ rails new sample_app create create README.rdoc create Rakefile create config.ru create .gitignore create Gemfile create app create app/assets/javascripts/application.js create app/assets/stylesheets/application.css create app/controllers/application_controller.rb create app/helpers/application_helper.rb create app/views/layouts/application.html.erb create app/assets/images/.keep create app/mailers/.keep create app/models/.keep create app/controllers/concerns/.keep create app/models/concerns/.keep create bin create bin/bundle create bin/rails create bin/rake create bin/setup create config create config/routes.rb create config/application.rb create config/environment.rb create config/secrets.yml create config/environments create config/environments/development.rb create config/environments/production.rb create config/environments/test.rb create config/initializers create config/initializers/assets.rb create config/initializers/backtrace_silencers.rb create config/initializers/cookies_serializer.rb create config/initializers/filter_parameter_logging.rb create config/initializers/inflections.rb create config/initializers/mime_types.rb create config/initializers/session_store.rb create config/initializers/wrap_parameters.rb create config/locales create config/locales/en.yml create config/boot.rb create config/database.yml create db create db/seeds.rb create lib create lib/tasks create lib/tasks/.keep create lib/assets create lib/assets/.keep create log create log/.keep create public create public/404.html create public/422.html create public/500.html create public/favicon.ico create public/robots.txt create test/fixtures create test/fixtures/.keep create test/controllers create test/controllers/.keep create test/mailers create test/mailers/.keep create test/models create test/models/.keep create test/helpers create test/helpers/.keep create test/integration create test/integration/.keep create test/test_helper.rb create tmp/cache create tmp/cache/assets create vendor/assets/javascripts create vendor/assets/javascripts/.keep create vendor/assets/stylesheets create vendor/assets/stylesheets/.keep run bundle install Fetching gem metadata from https://rubygems.org/.......... Resolving dependencies... Using rake 10.4.2 Using i18n 0.7.0 Using json 1.8.2 Using minitest 5.5.1 Using thread_safe 0.3.4 Using tzinfo 1.2.2 Using activesupport 4.2.0 Using builder 3.2.2 Using erubis 2.7.0 Using mini_portile 0.6.2 Using nokogiri 1.6.5 Using rails-deprecated_sanitizer 1.0.3 Using rails-dom-testing 1.0.5 Using loofah 2.0.1 Using rails-html-sanitizer 1.0.1 Using actionview 4.2.0 Using rack 1.6.0 Using rack-test 0.6.3 Using actionpack 4.2.0 Using globalid 0.3.0 Using activejob 4.2.0 Using mime-types 2.4.3 Using mail 2.6.3 Using actionmailer 4.2.0 Using activemodel 4.2.0 Using arel 6.0.0 Using activerecord 4.2.0 Using debug_inspector 0.0.2 Using binding_of_caller 0.7.2 Using bundler 1.7.12 Using columnize 0.9.0 Using debugger-linecache 1.2.0 Using slop 3.6.0 Using byebug 3.5.1 Using coffee-script-source 1.8.0 Using execjs 2.2.2 Using coffee-script 2.3.0 Using thor 0.19.1 Using railties 4.2.0 Using coffee-rails 4.1.0 Using hike 1.2.3 Using multi_json 1.10.1 Using jbuilder 2.2.6 Using jquery-rails 4.0.3 Using tilt 1.4.1 Using sprockets 2.12.3 Using sprockets-rails 2.2.2 Using rails 4.2.0 Using rdoc 4.2.0 Using sass 3.4.10 Using sass-rails 5.0.1 Using sdoc 0.4.1 Using spring 1.2.0 Using sqlite3 1.3.10 Using turbolinks 2.5.3 Using uglifier 2.7.0 Using web-console 2.0.0 Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed. run bundle exec spring binstub --all * bin/rake: spring inserted * bin/rails: spring inserted |
これによってrailsアプリケーションに必要なファイル・ディレクトリが作成されます.
全体像はこんな感じです.
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 |
./sample_app ./sample_app/.gitignore ./sample_app/app ./sample_app/app/assets ./sample_app/app/assets/images ./sample_app/app/assets/images/.keep ./sample_app/app/assets/javascripts ./sample_app/app/assets/javascripts/application.js ./sample_app/app/assets/stylesheets ./sample_app/app/assets/stylesheets/application.css ./sample_app/app/controllers ./sample_app/app/controllers/application_controller.rb ./sample_app/app/controllers/concerns ./sample_app/app/controllers/concerns/.keep ./sample_app/app/helpers ./sample_app/app/helpers/application_helper.rb ./sample_app/app/mailers ./sample_app/app/mailers/.keep ./sample_app/app/models ./sample_app/app/models/.keep ./sample_app/app/models/concerns ./sample_app/app/models/concerns/.keep ./sample_app/app/views ./sample_app/app/views/layouts ./sample_app/app/views/layouts/application.html.erb ./sample_app/bin ./sample_app/bin/bundle ./sample_app/bin/rails ./sample_app/bin/rake ./sample_app/bin/setup ./sample_app/bin/spring ./sample_app/config ./sample_app/config/application.rb ./sample_app/config/boot.rb ./sample_app/config/database.yml ./sample_app/config/environment.rb ./sample_app/config/environments ./sample_app/config/environments/development.rb ./sample_app/config/environments/production.rb ./sample_app/config/environments/test.rb ./sample_app/config/initializers ./sample_app/config/initializers/assets.rb ./sample_app/config/initializers/backtrace_silencers.rb ./sample_app/config/initializers/cookies_serializer.rb ./sample_app/config/initializers/filter_parameter_logging.rb ./sample_app/config/initializers/inflections.rb ./sample_app/config/initializers/mime_types.rb ./sample_app/config/initializers/session_store.rb ./sample_app/config/initializers/wrap_parameters.rb ./sample_app/config/locales ./sample_app/config/locales/en.yml ./sample_app/config/routes.rb ./sample_app/config/secrets.yml ./sample_app/config.ru ./sample_app/db ./sample_app/db/seeds.rb ./sample_app/Gemfile ./sample_app/Gemfile.lock ./sample_app/lib ./sample_app/lib/assets ./sample_app/lib/assets/.keep ./sample_app/lib/tasks ./sample_app/lib/tasks/.keep ./sample_app/log ./sample_app/log/.keep ./sample_app/public ./sample_app/public/404.html ./sample_app/public/422.html ./sample_app/public/500.html ./sample_app/public/favicon.ico ./sample_app/public/robots.txt ./sample_app/Rakefile ./sample_app/README.rdoc ./sample_app/test ./sample_app/test/controllers ./sample_app/test/controllers/.keep ./sample_app/test/fixtures ./sample_app/test/fixtures/.keep ./sample_app/test/helpers ./sample_app/test/helpers/.keep ./sample_app/test/integration ./sample_app/test/integration/.keep ./sample_app/test/mailers ./sample_app/test/mailers/.keep ./sample_app/test/models ./sample_app/test/models/.keep ./sample_app/test/test_helper.rb ./sample_app/tmp ./sample_app/tmp/cache ./sample_app/tmp/cache/assets ./sample_app/vendor ./sample_app/vendor/assets ./sample_app/vendor/assets/javascripts ./sample_app/vendor/assets/javascripts/.keep ./sample_app/vendor/assets/stylesheets ./sample_app/vendor/assets/stylesheets/.keep |
各フォルダの説明は以下の通り.
ファイル/ディレクトリ | 目的 |
---|---|
app/ |
モデル、ビュー、コントローラ、ヘルパーなどを含む主要なアプリケーションコード |
app/assets |
アプリケーションで使用するCSS (Cascading Style Sheet)、JavaScriptファイル、画像などのアセット |
bin/ |
バイナリ実行可能ファイル |
config/ |
アプリケーションの設定 |
db/ |
データベース関連のファイル |
doc/ |
マニュアルなど、アプリケーションのドキュメント |
lib/ |
ライブラリモジュール |
lib/assets |
ライブラリで使用するCSS (Cascading Style Sheet)、JavaScriptファイル、画像などのアセット |
log/ |
アプリケーションのログファイル |
public/ |
エラーページなど、一般(Webブラウザなど)に直接公開するデータ |
bin/rails |
コード生成、コンソールの起動、ローカルのWebサーバーの立ち上げなどに使用するRailsスクリプト |
test/ |
アプリケーションのテスト (3.1.2で作成するspec/ ディレクトリがあるため、現在は使用されていません) |
tmp/ |
一時ファイル |
vendor/ |
サードパーティのプラグインやgemなど |
vendor/assets |
サードパーティのプラグインやgemで使用するCSS (Cascading Style Sheet)、JavaScriptファイル、画像などのアセット |
README.rdoc |
アプリケーションの簡単な説明 |
Rakefile |
rake コマンドで使用可能なタスク |
Gemfile |
このアプリケーションに必要なGemの定義ファイル |
Gemfile.lock |
アプリケーションのすべてのコピーが同じgemのバージョンを使用していることを確認するために使用されるgemのリスト |
config.ru |
Rackミドルウェア用の設定ファイル |
.gitignore |
Gitに無視させたいファイルを指定するためのパターン |
これでアプリケーション(の大枠)は完成です.
2.アプリケーションを実行する.
1.で作成したアプリケーションを実行してみましょう.
1 2 3 4 5 6 7 8 9 |
$ cd sample_app $ rails server => Booting WEBrick => Rails 4.2.0 application starting in development on http://localhost:3000 => Run `rails server -h` for more startup options => Ctrl-C to shutdown server [2015-01-17 18:50:45] INFO WEBrick 1.3.1 [2015-01-17 18:50:45] INFO ruby 2.1.5 (2014-11-13) [x86_64-darwin13.0] [2015-01-17 18:50:45] INFO WEBrick::HTTPServer#start: pid=77866 port=3000 |
アプリケーションのディレクトリに移動して、rails server を実行するだけです.
途中のログに出ている通り、http://localhost:3000 でアクセスを待ち受けています.
実際ブラウザでアクセスすると以下のような画面が表示されます.
実行中にコンソールを利用したい場合は、rails serverをバックグラウンド実行させてください.
1 2 3 4 5 6 7 8 9 |
^Z [1]+ Stopped rails server $ bg Started GET "/" for ::1 at 2015-01-17 19:04:35 +0900 Processing by Rails::WelcomeController#index as HTML Rendered /Users/tubo/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/railties-4.2.0/lib/rails/templates/rails/welcome/index.html.erb (0.4ms) Completed 200 OK in 13ms (Views: 9.9ms | ActiveRecord: 0.0ms) $ |
最初の^Zは Ctrl + Z で、プログラムを一時停止させることが出来ます.
その後、bgの実行によって停止中のプログラム(rails server)をバックグラウンド実行させます.