LoginSignup
1
1

More than 5 years have passed since last update.

Ruby on rails を使ってCRUDを実装するまで(プロジェクト作成~画面表示)

Last updated at Posted at 2019-04-09

Ruby on Railsとは何か

RUby on rails とはRubyのフレームワークの一つです。
PHPのフレームワークの一つであるLaravelとよく似ている(個人談)と感じたので、
今後、業務で使うかもしれないので、備忘録として、プロジェクトの作成、Routing,Model,DB,Controller,Viewの
使い方をまとめておく。

ゴール

基本的なCRUDがRubyを用いてできるようになる
(この記事では画面表示ができるまでを範囲とする)

バージョン

$ruby -v
ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18]
$rails -v
Rails 5.2.3

プロジェクトの作成

適当なディレクトリで以下コマンドを実行する

$ruby new [好きなプロジェクト名]

フォルダ構成

作成したプロジェクト(ここではblog)のフォルダ構成は以下の通り

$ tree -l blog/
blog/
├── Gemfile
├── Gemfile.lock
├── README.md
├── Rakefile
├── 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
│   ├── credentials.yml.enc
│   ├── database.yml
│   ├── environment.rb
│   ├── environments
│   │   ├── development.rb
│   │   ├── production.rb
│   │   └── test.rb
│   ├── initializers
│   │   ├── application_controller_renderer.rb
│   │   ├── assets.rb
│   │   ├── backtrace_silencers.rb
│   │   ├── content_security_policy.rb
│   │   ├── cookies_serializer.rb
│   │   ├── filter_parameter_logging.rb
│   │   ├── inflections.rb
│   │   ├── mime_types.rb
│   │   └── wrap_parameters.rb
│   ├── locales
│   │   └── en.yml
│   ├── master.key
│   ├── puma.rb
│   ├── routes.rb
│   ├── spring.rb
│   └── storage.yml
├── config.ru
├── db
│   └── seeds.rb
├── lib
│   ├── assets
│   └── tasks
├── log
├── package.json
├── public
│   ├── 404.html
│   ├── 422.html
│   ├── 500.html
│   ├── apple-touch-icon-precomposed.png
│   ├── apple-touch-icon.png
│   ├── favicon.ico
│   └── robots.txt
├── storage
├── test
│   ├── application_system_test_case.rb
│   ├── controllers
│   ├── fixtures
│   │   └── files
│   ├── helpers
│   ├── integration
│   ├── mailers
│   ├── models
│   ├── system
│   └── test_helper.rb
├── tmp
│   ├── cache
│   │   └── assets
│   └── storage
└── vendor

主に使うファイルを下記に記載しておく

config/route.rb         <- routingファイル
app/assets/stylesheets <- css
app/controllers         <- controller
app/models              <- model
app/views               <- view
db/migrate              <- migration ファイル

 画面表示を試してみよう

railsのローカル環境のサーバーの建て方はとても簡単で次のコマンドを打てば良い

$ rails server
=> Booting Puma
=> Rails 5.2.3 application starting in development 
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.12.1 (ruby 2.3.7-p456), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://localhost:3000
Use Ctrl-C to stop

http://localhost:3000にアクセスすると
スクリーンショット 2019-04-09 12.48.59.png
このような画面が表示されれば、とりあえずは大丈夫です。

長くなりそうなので、ここで一旦切ります。

1
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1