crear usuaries

This commit is contained in:
f 2019-07-03 16:33:26 -03:00
parent 9599b10324
commit 07123247dd
No known key found for this signature in database
GPG key ID: 2AE5A13E321F953D
3 changed files with 111 additions and 0 deletions

3
app/models/usuarie.rb Normal file
View file

@ -0,0 +1,3 @@
# Usuarie de la plataforma
class Usuarie < ApplicationRecord
end

View file

@ -0,0 +1,70 @@
# Crea Usuaries y migra lxs Invitadxs pre-existentes.
class CreateUsuarie < ActiveRecord::Migration[5.2]
def up
create_table :usuaries do |t|
t.timestamps
t.string :email, null: false, default: ''
t.string :encrypted_password, null: false, default: ''
## Recoverable
t.string :reset_password_token
t.datetime :reset_password_sent_at
## Rememberable
t.datetime :remember_created_at
## Confirmable
t.string :confirmation_token
t.datetime :confirmed_at
t.datetime :confirmation_sent_at
t.string :unconfirmed_email # Only if using reconfirmable
## Lockable
# Only if lock strategy is :failed_attempts
t.integer :failed_attempts, default: 0, null: false
# Only if unlock strategy is :email or :both
t.string :unlock_token
t.datetime :locked_at
t.boolean :acepta_politicas_de_privacidad, default: false
end
add_index :usuaries, :email, unique: true
add_index :usuaries, :reset_password_token, unique: true
add_index :usuaries, :confirmation_token, unique: true
add_index :usuaries, :unlock_token, unique: true
Invitadx.all.find_each do |i|
Usuarie.create email: i.email,
encrypted_password: i.password_digest,
acepta_politicas_de_privacidad: i.acepta_politicas_de_privacidad,
confirmed_at: i.confirmed ? i.updated_at : nil,
updated_at: i.updated_at,
created_at: i.created_at
end
drop_table :invitadxs
end
def down
create_table :invitadxs do |t|
t.timestamps
t.string :password_digest
t.string :email, unique: true, index: true
t.string :confirmation_token
t.boolean :confirmed
t.boolean :acepta_politicas_de_privacidad, default: false
end
Usuarie.all.find_each do |i|
Invitadx.create email: i.email,
password_digest: i.encrypted_password,
acepta_politicas_de_privacidad: i.acepta_politicas_de_privacidad,
confirmed: !i.confirmed_at.nil?,
updated_at: i.updated_at,
created_at: i.created_at
end
drop_table :usuaries
end
end

38
db/schema.rb Normal file
View file

@ -0,0 +1,38 @@
# 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.
#
# Note that this schema.rb definition is the authoritative source for
# your database schema. If you need to create the application database
# on another system, you should be using db:schema:load, not running all
# the migrations from scratch. The latter is a flawed and unsustainable
# approach (the more migrations you'll amass, the slower it'll run and
# the greater likelihood for issues).
#
# It's strongly recommended that you check this file into your version
# control system.
ActiveRecord::Schema.define(version: 20_190_703_190_859) do
create_table 'usuaries', force: :cascade do |t|
t.datetime 'created_at', null: false
t.datetime 'updated_at', null: false
t.string 'email', default: '', null: false
t.string 'encrypted_password', default: '', null: false
t.string 'reset_password_token'
t.datetime 'reset_password_sent_at'
t.datetime 'remember_created_at'
t.string 'confirmation_token'
t.datetime 'confirmed_at'
t.datetime 'confirmation_sent_at'
t.string 'unconfirmed_email'
t.integer 'failed_attempts', default: 0, null: false
t.string 'unlock_token'
t.datetime 'locked_at'
t.boolean 'acepta_politicas_de_privacidad', default: false
t.index ['confirmation_token'], name: 'index_usuaries_on_confirmation_token', unique: true
t.index ['email'], name: 'index_usuaries_on_email', unique: true
t.index ['reset_password_token'], name: 'index_usuaries_on_reset_password_token', unique: true
t.index ['unlock_token'], name: 'index_usuaries_on_unlock_token', unique: true
end
end