Skip to content

Instantly share code, notes, and snippets.

@JackHowa
Last active May 16, 2017 16:00
Show Gist options
  • Save JackHowa/1dbf062a003e213cfe069419f512e016 to your computer and use it in GitHub Desktop.
Save JackHowa/1dbf062a003e213cfe069419f512e016 to your computer and use it in GitHub Desktop.
console sinatra errors
console:
gem install bundler
rbenv local 2.2.2
bundle install
$ postgres -D /usr/local/var/postgres
FATAL: lock file "postmaster.pid" already exists
HINT: Is another postmaster (PID 22858) running in data directory "/usr/local/var/postgres"?
Jack Howard (make-walks *) ~/jackhowa/two-phase/two-week/jacksrabbits
$ kill -9 22858
gemfile:
source 'https://rubygems.org'
ruby '~> 2.2', '>= 2.2.2'
# PostgreSQL driver
gem 'pg', '~> 0.18'
# Sinatra driver
gem 'sinatra', '~> 1.4.8'
gem 'sinatra-contrib'
gem 'activerecord', '~> 5.0'
gem 'activesupport', '~> 5.0'
gem 'rake', '~> 12.0.0'
gem 'shotgun'
gem 'bcrypt'
group :test do
gem 'shoulda-matchers'
gem 'rack-test'
gem 'rspec', '~> 3.5'
gem 'capybara'
end
group :test, :development do
gem 'factory_girl'
gem 'faker', '~> 1.7.3'
end
authenticate:
controller:
get '/users/new' do
erb :"/users/new"
end
post '/new' do
@new_user = User.new(user_name: params[:user_name], password: params[:password])
if @new_user.save
session[:user_id] = @new_user.id
redirect "/users"
else
@errors = @new_user.errors.full_messages
erb :'/users/new'
end
end
get '/users/login' do
erb :'/users/login'
end
post '/users' do
@user = User.find_by(user_name: params[:user_name])
if @user
if @user.authenticate(@user.user_name, params[:password])
session[:user_id] = @user.id
redirect "/users"
else
@errors = ["Your valid username does have a valid password"]
erb :"/users/login"
end
else
@errors = ["Your valid username does have a valid password"]
erb :"/users/login"
end
end
get '/logout' do
session.delete(:user_id)
redirect '/users'
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment