gemのインストールとルーティングの設定、deviseを使う準備

TECH::CAMPで勉強し始めて12週間目。

 

練習用のオリジナルアプリのDB設計ができたので、

rails new し、gemをインストールします

今回インストールしたのはこちら。 

gem 'pry-rails' ...デバッグ作業(binding.pry)に使用
gem 'compass-rails', '3.1.0' ...CSSの記述を速くする
gem 'sprockets', '3.7.2' ...画面を補正してくれる
gem 'devise' ...ユーザー登録機能を簡単に作れる
gem 'chart-js-rails' ...グラフ描画できるjsライブラリ
gem 'carrierwave' ...画像のアップロード
gem 'mini_magick' ...アップロード画像のサイズ変換
gem "font-awesome-sass" ...font-awesomeからアイコンを引っ張る
gem 'gon' ...railsの変数をjsで使える(今回はカラムの値をjsに渡すため)

 

また、

Mysql を 0.5.3にアップデートします。

gem 'mysql2', '>= 0.3.18', '< 0.6.0'

となっているのを

gem 'mysql2', '0.5.3'

 に修正。

 

'sass-rails', も 5.0.7 にアップデートします。 

gem 'sass-rails', '~>5.0'

となっているのを

gem 'sass-rails', '5.0.7'

に修正しました。

 

そして

$ bundle update

 

次に、ルーティングを設定します。

Rails.application.routes.draw do
devise_for :users
root "posts#index"
resources :posts, except: :index do
resources :comments, only: :create
resources :likes, only: [:create, :destroy]
end
end

 

ユーザー関連はdevise_for :users に入っています。

今回は投稿一覧ページをルートパスに設定。

commentsとlikes(いいね)はpostsにネストして関連付けを行います。

 

次は、devise関連の色々処理。

deviseはインストール後、ターミナルで

  • $ rails g devise:install   ...デバイスをインストール
  • $ rails g devise:view  ...ビューを生成(デフォルトのログイン画面等が出来上がる)
  • $ rails g devise user  ...ユーザーモデルを生成

  →マイグレーションファイル devise_create_user_rb ができる。

   デフォルトで作られないカラムを作成したいときは、

   このファイルをいじると良さそう。

 

また、deviseを使って新たなカラムを作ったときは、

application_controller.rb に

protected
def configure_permitted_parameters
devise_parameter_sanitizer.permit(:sign_up, keys: [:nickname, :message])
end

という記述が必要。

今回はnicknameカラムとmessageカラムを追加したので、

そのように記載しました。

 

とりあえずここまで。

deviseを使うための処理がなかなか覚えられないので、

後から見返そうと思います。