houdini/db/migrate/20180214124311_create_source_tokens.rb
2019-08-02 19:07:29 +02:00

20 lines
677 B
Ruby

# frozen_string_literal: true
# License: AGPL-3.0-or-later WITH Web-Template-Output-Additional-Permission-3.0-or-later
class CreateSourceTokens < ActiveRecord::Migration
def change
create_table :source_tokens, id: false do |t|
t.column :token, 'uuid', primary_key: true, null: false
t.datetime :expiration
t.references :tokenizable, polymorphic: true
t.references :event
t.integer :max_uses, default: 1
t.integer :total_uses, default: 0
t.timestamps
end
add_index :source_tokens, :token, unique: true
add_index :source_tokens, :expiration
add_index :source_tokens, %i[tokenizable_id tokenizable_type]
end
end