##目的
自分用のRailsでHello Worldの表示。今回はmacでの環境設定。
Windowsは次回。。。。
##開発環境
macOS Big Sur
Visual Studio Code
##バージョン
Rails 5.2.3
Ruby 2.7.0
rbenv 1.1.2
Bundler 2.1.4
##初期設定
######1 . [Homebrew][link-1]のインストール
[link-1]:https://brew.sh/index_ja
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
######2 . rbenvのインストール
Rubyのバージョン管理ツールrbenvのダウンロード
$ brew install rbenv ruby-build
######3-1 . Rubyのインストール
最新版(2.7.0)をインストール
$ rbenv install --list
$ rbenv install 2.7.0
$ rbenv global 2.7.0
$ ruby -v
#####3-2 . PATHを通す
$ touch ~/.bash_profile # ホームディレクトリに.bash_profileを作成
$ touch ~/.bashrc # ホームディレクトリに.bashrcを作成
$ echo '# rbenv' >> ~/.bash_profile
$ echo 'export PATH=~/.rbenv/bin:$PATH' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
$ source ~/.bash_profile
######4 . Bundleのインストール
Railsのバージョン管理ツールのダウンロード
$ gem install bundler
$ bundle -v
#####5 . Railsのインストール
$ gem install -v 5.2.3 rails
$ gem list rails
*** LOCAL GEMS ***
rails (6.0.2.1, 5.2.3)
rails-dom-testing (2.0.3)
rails-html-sanitizer (1.3.0)
sprockets-rails (3.2.1)
######6 . データベースのインストール
sqlite3
$ gem install sqlite3 @[バージョン]
postgresql
$ brew install postgresql @[バージョン]
MySQL
$ brew install mysql @[バージョン]
$ mysql.server start
######7 . プロジェクト作成・導入〜起動
$ rails _5.2.3_ new my-app
$ cd my-app
$ bundle install --path vendor/bundle
$ rails server
→ Gemfileからインストールする方法もある
##応用
#####bootstrap4の導入
gem 'bootstrap', '~> 4.3.1'
gem 'jquery-rails'
$ bundle install
//= require jquery3
//= require popper
//= require bootstrap-sprockets
→ 文末には記述しない
@import "bootstrap";
##ルーターとMVC開発
$ rails g controller users index
#####ルーター
Rails.application.routes.draw do
get 'users/index'
# For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
end
#####①モデル
$ 省略
#####②コントローラー
class UsersController < ApplicationController
def index
@message = 'Hello World'
end
end
#####③ビュー
<div class="row">
<div class="col-1">
</div>
<div class="col-4">
<h1><%= @message %></h1>
</div>
</div>
##おまけ
#####復元するとき
$ bundle update
#####バックグランドで残っているとき
$ rm ./tmp/pids/server.pid //process idを消す