Add AuthUser model, connecting to openneo_id db
No user-facing functionality here yet, just configuring the database connection to work with openneo_id records. This is a first step in integrating Devise stuff into this app instead of connecting with a weird second app. My basic testing for this was to temporarily connect to production `openneo_id`, and see `AuthUser.first` correctly return a user!
This commit is contained in:
parent
fbda28e453
commit
1d5af835a5
4 changed files with 46 additions and 0 deletions
2
Vagrantfile
vendored
2
Vagrantfile
vendored
|
@ -81,6 +81,8 @@ Vagrant.configure("2") do |config|
|
||||||
mysql -e "CREATE USER IF NOT EXISTS openneo_impress IDENTIFIED BY 'openneo_impress';"
|
mysql -e "CREATE USER IF NOT EXISTS openneo_impress IDENTIFIED BY 'openneo_impress';"
|
||||||
mysql -e "CREATE DATABASE IF NOT EXISTS openneo_impress;"
|
mysql -e "CREATE DATABASE IF NOT EXISTS openneo_impress;"
|
||||||
mysql -e "GRANT ALL PRIVILEGES ON openneo_impress.* TO openneo_impress;"
|
mysql -e "GRANT ALL PRIVILEGES ON openneo_impress.* TO openneo_impress;"
|
||||||
|
mysql -e "CREATE DATABASE IF NOT EXISTS openneo_id;"
|
||||||
|
mysql -e "GRANT ALL PRIVILEGES ON openneo_id.* TO openneo_impress;"
|
||||||
echo 'When you log in as vagrant, run `rbenv init` and follow the instructions!'
|
echo 'When you log in as vagrant, run `rbenv init` and follow the instructions!'
|
||||||
echo 'Then, run `bundle install`, and `rake db:schema:load && rake db:seed`!'
|
echo 'Then, run `bundle install`, and `rake db:schema:load && rake db:seed`!'
|
||||||
SHELL
|
SHELL
|
||||||
|
|
5
app/models/auth_record.rb
Normal file
5
app/models/auth_record.rb
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
class AuthRecord < ApplicationRecord
|
||||||
|
self.abstract_class = true
|
||||||
|
|
||||||
|
connects_to database: {reading: :openneo_id, writing: :openneo_id}
|
||||||
|
end
|
3
app/models/auth_user.rb
Normal file
3
app/models/auth_user.rb
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
class AuthUser < AuthRecord
|
||||||
|
self.table_name = 'users'
|
||||||
|
end
|
36
db/openneo_id_schema.rb
Normal file
36
db/openneo_id_schema.rb
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
# This file is auto-generated from the current state of the database. Instead
|
||||||
|
# of editing this file, please use the migrations feature of Active Record to
|
||||||
|
# incrementally modify your database, and then regenerate this schema definition.
|
||||||
|
#
|
||||||
|
# This file is the source Rails uses to define your schema when running `bin/rails
|
||||||
|
# db:schema:load`. When creating a new database, `bin/rails db:schema:load` tends to
|
||||||
|
# be faster and is potentially less error prone than running all of your
|
||||||
|
# migrations from scratch. Old migrations may fail to apply correctly if those
|
||||||
|
# migrations use external dependencies or application code.
|
||||||
|
#
|
||||||
|
# It's strongly recommended that you check this file into your version control system.
|
||||||
|
|
||||||
|
ActiveRecord::Schema[7.0].define(version: 0) do
|
||||||
|
create_table "users", id: { type: :integer, unsigned: true }, charset: "utf8", force: :cascade do |t|
|
||||||
|
t.string "name", limit: 20, null: false
|
||||||
|
t.string "encrypted_password", limit: 64, null: false
|
||||||
|
t.string "email", limit: 50, null: false
|
||||||
|
t.string "password_salt", limit: 32, null: false
|
||||||
|
t.string "reset_password_token"
|
||||||
|
t.integer "sign_in_count", default: 0
|
||||||
|
t.datetime "current_sign_in_at", precision: nil
|
||||||
|
t.datetime "last_sign_in_at", precision: nil
|
||||||
|
t.string "current_sign_in_ip"
|
||||||
|
t.string "last_sign_in_ip"
|
||||||
|
t.integer "failed_attempts", default: 0
|
||||||
|
t.string "unlock_token"
|
||||||
|
t.datetime "locked_at", precision: nil
|
||||||
|
t.datetime "created_at", precision: nil
|
||||||
|
t.datetime "updated_at", precision: nil
|
||||||
|
t.datetime "reset_password_sent_at", precision: nil
|
||||||
|
t.index ["email"], name: "index_users_on_email", unique: true
|
||||||
|
t.index ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
|
||||||
|
t.index ["unlock_token"], name: "index_users_on_unlock_token", unique: true
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
Loading…
Reference in a new issue