Sorceryを使って新規登録機能をつける(1)

github.com

 参考:

cyllabus.jp

1)bundle install

gem 'spring'
gem 'pry-rails'
gem 'better_errors'
gem 'haml-rails'
gem 'bootstrap-sass'
gem 'font-awesome-rails'
gem 'sorcery'

 

2)rails generate sorcery:install (Terminalで打つ)

3) rails g scaffold user -s --skip-migration

user table、migration fileが作られる。他のファイルも作られる。

認証のための基本的な用意が整う。

4)テーブルにコラムを追加して、他の項目も入れられるようにする。

rails g migration add_name_and_screen_name_add_bio_to_users name:string screen_name:string bio:string

5)rails g controller registrations new(Terminalで打つ)

モデルとしてはUserを使うが、controllerとしては、 新しく作る。
のちに sessions controllerも作る。

 作ったもの:

registrations_new_path GET /registrations/new(.:format) registrations#new


6)routes.rb を編集してパスをほかに作る。(rake routes (Terminalで打つ))

ails.application.routes.draw do
  resources :registratons, only: [:new, :create]

  resources :users

7)models のuser.rb

 


validates :name, presence true, uniqueness: {case_sensitive: false}, format: {with: /A[a-z][a-z0-9]+z/}

validates :screen_name, length: {maximum: 140}

validates :bio, length: {maximum: 200}

validates :email, presence: true, uniqueness: {case_sensitive: false}

validates :password, confirmation: true, length: {in: 6..26}

validates :password_confirmation, presence: true, if: :password

 

Note:

if: :password というのは、 :if => :password と同じ。

 

 

ーーto be continued