Sha256: 52dade9f701cb13597c765a2fe97009fc6a3ab5c76a90f77077b0a6481203426

Contents?: true

Size: 1.35 KB

Versions: 1

Compression:

Stored size: 1.35 KB

Contents

# Migration responsible for creating a table with notifications
class CreateActivityNotificationTables < ActiveRecord::Migration
  # Create tables
  def change
    create_table :notifications do |t|
      t.belongs_to :target,     polymorphic: true, index: true, null: false
      t.belongs_to :notifiable, polymorphic: true, index: true, null: false
      t.string     :key,                                        null: false
      t.belongs_to :group,      polymorphic: true, index: true
      t.integer    :group_owner_id,                index: true
      t.belongs_to :notifier,   polymorphic: true, index: true
      t.text       :parameters
      t.datetime   :opened_at

      t.timestamps
    end

    create_table :subscriptions do |t|
      t.belongs_to :target,     polymorphic: true, index: true, null: false
      t.string     :key,                           index: true, null: false
      t.boolean    :subscribing,                                null: false, default: true
      t.boolean    :subscribing_to_email,                       null: false, default: true
      t.datetime   :subscribed_at
      t.datetime   :unsubscribed_at
      t.datetime   :subscribed_to_email_at
      t.datetime   :unsubscribed_to_email_at
      t.text       :parameters

      t.timestamps
    end
    add_index :subscriptions, [:target_type, :target_id, :key], unique: true
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
activity_notification-1.1.0 spec/rails_app/db/migrate/20160715050420_create_activity_notification_tables.rb