4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Macでrailsプロジェクト立ち上げ

Last updated at Posted at 2017-06-09

はじめに

これは忘れっぽい自分用にメモを作ってみようと思い書いてみました。
今回はruby on railsのプロジェクト立ち上げの手順を書こうと思います。

開発環境はMacでDBはMySQLを使用します。

rbenv インストール

rbenv はhomebrewでインストールします。
$ brew install rbenv ruby-build
rbenvがinstallされたか確認

$ rbenv -v
rbenv 1.1.0

バージョンが表示されることを確認

ruby インストール

次にrubyのインストールを行います。
まず、インストール可能バージョンを確認します。

$ rbenv install --list
  ...
  2.4.0-rc1
  2.4.0
  2.4.1
  2.5.0-dev
  jruby-1.5.6
  ...

インストールしたいバージョンが存在するか確認しインストールを行います。
今回は2.4.1をインストールして確認

$ rbenv install 2.4.1
$ ruby -v
  ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-darwin16]

インストールしたバージョンをrbenvのデフォルトバージョンに設定

$ rbenv global 2.4.1
$ rbenv versions
  system (set by /Users/user_name/.rbenv/version)
* 2.4.1

bundlerだけグローバルにインストール
$ gem install bundler

rails プロジェクト準備

既存プロジェクトはすでにGemfileが存在するのでここを飛ばしてください。
$ bundler init
Gemfileが作成されます。
今回はrailsプロジェクト立ち上げまで手順を記載しようと思いますのでGemfileを修正してgem "rails"のコメントアウトを削除し、今回はmysqlを使用しますのでgem "mysql2"を追加します。

ここは既存も共通でgemインストールになります。

$ bundle install --path vendor/bundle

この時にpathを設定すると現在のカレントディレクトリからvendor/bundleディレクトリを作成して、そこにgemをインストールしてくれるのでプロジェクト毎にgemを管理できて便利です。
既存のプロジェクトはここからDB作成の項目までスキップしてください。

rails プロジェクト作成

railsプロジェクトを作成するには
$ bundle exec rails new . -B -d mysql

上記で新しいrailsプロジェクトを作成できます
ちなみにオプションの-Bはbundle installをスキップします。
($ bundle exec rails new -hでオプション詳細が見れます。)

続いて画面を作成します。
railsには簡単に画面を作成させるコマンドが存在します。
とりあえずUsersテーブルのnameカラムを作成します。
$ bundle exec rails generate scaffold User name:string

これで、画面などのテンプレートが作成されました。

エラーになったらエラー内容を確認し`Add gem 'listen'`のような文言があったらGemfileにgem 'listen' を記載してbundle installを行ってください。

DB作成

今回はmysqlを使用します。
デフォルトではDB接続のpasswordが空なので設定してあるのであれば先に入力します。
ちなみにrootでアクセスします。

config/database.yml
 default: &default
   adapter: mysql2
   encoding: utf8
   pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
   username: root
   password: # ここにパスワード入力
   socket: /tmp/mysql.sock

モデルを作成したのでこれでDBを作成できます。
$ bundle exec rails db:create
上記でDBを作成できます。

ここで作成されるのはdevelop環境とtest環境のDBになります。
ここからテーブルを作成していきます。
$ bundle exec rails db:migrate

これでmodelで作成した項目がDBのcolumnとなります。
実際にmysqlコマンドで確認してみるのもいいかもしれないですね。

検証

$ bundle exec rails s

エラーなく実行されたら
http://localhost:3000
にアクセスして画面が正常に出力されるか確認します。

新規でプロジェクト作成した場合下記を参照してみてください。
http://localhost:3000/users
先ほど作成した画面が見れると思います。

エラーになったら Sprockets::FileNotFound in Users#indexというエラーが発生した場合 app/assets/javascripts/application.js ファイルの `//= require turbolinks` を削除して再度試してみてください。

以上で完了です!

4
5
0

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
4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?