Files
danbooru/db/migrate/20100204211522_create_users.rb

43 lines
1.7 KiB
Ruby

class CreateUsers < ActiveRecord::Migration[4.2]
def self.up
create_table :users do |t|
t.timestamps
t.column :name, :string, :null => false
t.column :password_hash, :string, :null => false
t.column :email, :string
t.column :email_verification_key, :string
t.column :inviter_id, :integer
t.column :is_banned, :boolean, :null => false, :default => false
t.column :level, :integer, :null => false, :default => 0
t.column :base_upload_limit, :integer, :null => false, :default => 10
# Cached data
t.column :last_logged_in_at, :datetime
t.column :last_forum_read_at, :datetime
t.column :has_mail, :boolean, :null => false, :default => false
t.column :recent_tags, :text
t.column :post_upload_count, :integer, :null => false, :default => 0
t.column :post_update_count, :integer, :null => false, :default => 0
t.column :note_update_count, :integer, :null => false, :default => 0
t.column :favorite_count, :integer, :null => false, :default => 0
# Profile settings
t.column :receive_email_notifications, :boolean, :null => false, :default => false
t.column :comment_threshold, :integer, :null => false, :default => -1
t.column :always_resize_images, :boolean, :null => false, :default => false
t.column :default_image_size, :string, :null => false, :default => "large"
t.column :favorite_tags, :text
t.column :blacklisted_tags, :text
t.column :time_zone, :string, :null => false, :default => "Eastern Time (US & Canada)"
end
execute "CREATE UNIQUE INDEX index_users_on_name ON users ((lower(name)))"
add_index :users, :email, :unique => true
end
def self.down
drop_table :users
end
end