diff --git a/app/controllers/sessions_controller.rb b/app/controllers/sessions_controller.rb
index 30ac1c4..b2ff728 100644
--- a/app/controllers/sessions_controller.rb
+++ b/app/controllers/sessions_controller.rb
@@ -3,7 +3,7 @@ class SessionsController < ApplicationController
end
def create
- @user = User.find_by(username: params[:username])
+ @user = User.find_by(email: params[:email])
if @user && @user.authenticate(params[:password])
session[:user_id] = @user.id
end
diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb
index 4698680..9392fc5 100644
--- a/app/controllers/users_controller.rb
+++ b/app/controllers/users_controller.rb
@@ -4,7 +4,7 @@ class UsersController < ApplicationController
end
def create
- @user = User.create(params.require(:user).permit(:username, :password))
+ @user = User.create(params.require(:user).permit(:email, :password))
session[:user_id] = @user.id
redirect_to '/welcome'
end
diff --git a/app/views/sessions/new.html.erb b/app/views/sessions/new.html.erb
index c22d0c3..67db6f9 100644
--- a/app/views/sessions/new.html.erb
+++ b/app/views/sessions/new.html.erb
@@ -1,7 +1,7 @@
Login
<%= form_tag '/login' do %>
- <%= label_tag :username%>
- <%= text_field_tag :username %>
+ <%= label_tag :email%>
+ <%= text_field_tag :email %>
<%= label_tag :password%>
<%= password_field_tag :password%>
<%= submit_tag "Login"%>
diff --git a/app/views/sessions/welcome.html.erb b/app/views/sessions/welcome.html.erb
index 640f008..b97e9cf 100644
--- a/app/views/sessions/welcome.html.erb
+++ b/app/views/sessions/welcome.html.erb
@@ -1,6 +1,6 @@
Welcome
<% if logged_in? %>
- You are Logged In, <%= current_user.username %>
+ You are Logged In, <%= current_user.email %>
<%= button_to "Logout", '/logout', method: :get%>
<%else%>
<%= button_to "Login", '/login', method: :get%>
diff --git a/app/views/users/new.html.erb b/app/views/users/new.html.erb
index ac34536..51a2e32 100644
--- a/app/views/users/new.html.erb
+++ b/app/views/users/new.html.erb
@@ -1,7 +1,7 @@
Sign Up
<%= form_for @user do |f|%>
- <%= f.label :username%>
- <%= f.text_field :username%>
+ <%= f.label :email%>
+ <%= f.text_field :email%>
<%= f.label :password%>
<%= f.password_field :password%>
<%= f.submit %>
diff --git a/db/migrate/20210320212922_change_username_to_email.rb b/db/migrate/20210320212922_change_username_to_email.rb
new file mode 100644
index 0000000..7ee7a5a
--- /dev/null
+++ b/db/migrate/20210320212922_change_username_to_email.rb
@@ -0,0 +1,5 @@
+class ChangeUsernameToEmail < ActiveRecord::Migration[6.1]
+ def change
+ rename_column :users, :username, :email
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index f541248..7240eeb 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
-ActiveRecord::Schema.define(version: 2021_03_20_130542) do
+ActiveRecord::Schema.define(version: 2021_03_20_212922) do
create_table "authors", force: :cascade do |t|
t.string "first_name"
@@ -39,7 +39,7 @@ ActiveRecord::Schema.define(version: 2021_03_20_130542) do
end
create_table "users", force: :cascade do |t|
- t.string "username"
+ t.string "email"
t.string "password_digest"
t.datetime "created_at", precision: 6, null: false
t.datetime "updated_at", precision: 6, null: false
diff --git a/spec/controllers/application_controller_spec.rb b/spec/controllers/application_controller_spec.rb
index cd64b2f..90e5974 100644
--- a/spec/controllers/application_controller_spec.rb
+++ b/spec/controllers/application_controller_spec.rb
@@ -3,12 +3,12 @@ require 'rails_helper'
RSpec.describe ApplicationController do
describe 'current_user' do
before(:all) do
- User.create(username: 'karol.selak@gmail.com', password: 'abcde')
+ User.create(email: 'karol.selak@gmail.com', password: 'abcde')
end
context 'when a user is logged in' do
it 'returns the user' do
# TODO
- # expect(current_user.username).to eql('karol.selak@gmail.com')
+ # expect(current_user.email).to eql('karol.selak@gmail.com')
end
end
end
diff --git a/spec/controllers/users_controller_spec.rb b/spec/controllers/users_controller_spec.rb
index bf36687..8253db7 100644
--- a/spec/controllers/users_controller_spec.rb
+++ b/spec/controllers/users_controller_spec.rb
@@ -12,11 +12,11 @@ RSpec.describe UsersController do
User.destroy_all
end
subject {
- get :create, params: {user: {username: 'karol.selak@gmail.com', password: 'abcde'}}
+ get :create, params: {user: {email: 'karol.selak@gmail.com', password: 'abcde'}}
}
it 'creates a user' do
subject
- expect(User.where(username: 'karol.selak@gmail.com').size).to eql(1)
+ expect(User.where(email: 'karol.selak@gmail.com').size).to eql(1)
end
it 'redirects to /welcome' do
subject