コジマです。
フレームワーク使ってると使い方は覚えて行きますが、
それが実際何やってるのかあまり考えなくてもよくなったりしますよね。
「こんなの実務で使わねーし」
「時間の無駄だー」
とか言わないでください。。。
なぜどうしてこうなるの?って結構気になっちゃう人なんです。
ルーティングの仕方わかっててモデルの扱いわかってて、適当でもビューが書けたら実務レベルから程遠くても
なんとなく形にできることは分かっているのです。
それがRuby on Railsの魅力であることも分かっているのです。
こんなの大事じゃないと思ってる人がいても私は知りたいので書きます。
part0と書いているのは一回じゃ書ききれないのが分かりきっているからです。
今回はなにができているか一覧の紹介のみ。
いくつまで行くかはわかりません。
sampleというアプリをrails newして作ったときにどんなディレクトリやファイルができて行くか見て行きます。
ちなみにrailsのバージョンは5.1.6
rubyのバージョンは2.3.1です
$ rails new sample create create README.md create Rakefile create config.ru create .gitignore create Gemfile run git init from "." Initialized empty Git repository in /home/vagrant/myRails/sample/.git/ create app create app/assets/config/manifest.js create app/assets/javascripts/application.js create app/assets/javascripts/cable.js create app/assets/stylesheets/application.css create app/channels/application_cable/channel.rb create app/channels/application_cable/connection.rb create app/controllers/application_controller.rb create app/helpers/application_helper.rb create app/jobs/application_job.rb create app/mailers/application_mailer.rb create app/models/application_record.rb create app/views/layouts/application.html.erb create app/views/layouts/mailer.html.erb create app/views/layouts/mailer.text.erb create app/assets/images/.keep create app/assets/javascripts/channels create app/assets/javascripts/channels/.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 bin/update create bin/yarn create config create config/routes.rb create config/application.rb create config/environment.rb create config/secrets.yml create config/cable.yml create config/puma.rb create config/spring.rb create config/environments create config/environments/development.rb create config/environments/production.rb create config/environments/test.rb create config/initializers create config/initializers/application_controller_renderer.rb create config/initializers/assets.rb create config/initializers/backtrace_silencers.rb create config/initializers/cookies_serializer.rb create config/initializers/cors.rb create config/initializers/filter_parameter_logging.rb create config/initializers/inflections.rb create config/initializers/mime_types.rb create config/initializers/new_framework_defaults_5_1.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/apple-touch-icon-precomposed.png create public/apple-touch-icon.png create public/favicon.ico create public/robots.txt create test/fixtures create test/fixtures/.keep create test/fixtures/files create test/fixtures/files/.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 test/system create test/system/.keep create test/application_system_test_case.rb create tmp create tmp/.keep create tmp/cache create tmp/cache/assets create vendor create vendor/.keep create package.json remove config/initializers/cors.rb remove config/initializers/new_framework_defaults_5_1.rb run bundle install The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x86-mswin32, x64-mingw32, java. To add those platforms to the bundle, run `bundle lock --add-platform x86-mingw32 x86-mswin32 x64-mingw32 java`. Fetching gem metadata from https://rubygems.org/......... Fetching gem metadata from https://rubygems.org/. Resolving dependencies..... Using rake 12.3.1 Using concurrent-ruby 1.0.5 Using i18n 1.0.1 Using minitest 5.11.3 Using thread_safe 0.3.6 Using tzinfo 1.2.5 Using activesupport 5.1.6 Using builder 3.2.3 Using erubi 1.7.1 Using mini_portile2 2.3.0 Using nokogiri 1.8.2 Using rails-dom-testing 2.0.3 Using crass 1.0.4 Using loofah 2.2.2 Using rails-html-sanitizer 1.0.4 Using actionview 5.1.6 Using rack 2.0.5 Using rack-test 1.0.0 Using actionpack 5.1.6 Using nio4r 2.3.0 Using websocket-extensions 0.1.3 Using websocket-driver 0.6.5 Using actioncable 5.1.6 Using globalid 0.4.1 Using activejob 5.1.6 Using mini_mime 1.0.0 Using mail 2.7.0 Using actionmailer 5.1.6 Using activemodel 5.1.6 Using arel 8.0.0 Using activerecord 5.1.6 Using public_suffix 3.0.2 Using addressable 2.5.2 Using bindex 0.5.0 Using bundler 1.16.1 Using byebug 10.0.2 Using xpath 3.0.0 Using capybara 2.18.0 Using ffi 1.9.23 Using childprocess 0.9.0 Using coffee-script-source 1.12.2 Using execjs 2.7.0 Using coffee-script 2.4.1 Using method_source 0.9.0 Using thor 0.20.0 Using railties 5.1.6 Using coffee-rails 4.2.2 Using multi_json 1.13.1 Using jbuilder 2.7.0 Using rb-fsevent 0.10.3 Using rb-inotify 0.9.10 Using ruby_dep 1.5.0 Using listen 3.1.5 Using puma 3.11.4 Using sprockets 3.7.1 Using sprockets-rails 3.2.1 Using rails 5.1.6 Using rubyzip 1.2.1 Using sass-listen 4.0.0 Using sass 3.5.6 Using tilt 2.0.8 Using sass-rails 5.0.7 Using selenium-webdriver 3.11.0 Using spring 2.0.2 Using spring-watcher-listen 2.0.1 Using sqlite3 1.3.13 Using turbolinks-source 5.1.0 Using turbolinks 5.1.1 Using uglifier 4.1.10 Fetching web-console 3.6.2 Installing web-console 3.6.2 Bundle complete! 16 Gemfile dependencies, 70 gems now installed. Use `bundle info [gemname]` to see where a bundled gem is installed. run bundle exec spring binstub --all * bin/rake: spring inserted * bin/rails: spring inserted
なにやら沢山できている模様。
次回で少しずつrails newの中身を紐解いて行こうと思います。
以上、コジマでした。