Sha256: 6680575a73241dfe9435209babad8e563221cf8ffa9da4c584b55576a21d74e2

Contents?: true

Size: 1.26 KB

Versions: 3

Compression:

Stored size: 1.26 KB

Contents

class <%= migration_class_name %> < ActiveRecord::Migration<%= migration_version %>
  def change
   create_table :ahoy_visits do |t|
      t.string :visit_token
      t.string :visitor_token

      # the rest are recommended but optional
      # simply remove any you don't want

      # user
      t.references :user

      # standard
      t.string :ip
      t.text :user_agent
      t.text :referrer
      t.string :referring_domain
      t.string :search_keyword
      t.text :landing_page

      # technology
      t.string :browser
      t.string :os
      t.string :device_type

      # location
      t.string :country
      t.string :region
      t.string :city

      # utm parameters
      t.string :utm_source
      t.string :utm_medium
      t.string :utm_term
      t.string :utm_content
      t.string :utm_campaign

      t.timestamp :started_at
    end

    add_index :ahoy_visits, [:visit_token], unique: true

    create_table :ahoy_events do |t|
      t.references :visit
      t.references :user

      t.string :name
      t.<%= properties_type %> :properties
      t.timestamp :time
    end

    add_index :ahoy_events, [:name, :time]<% if properties_type == "jsonb" && rails5? %>
    add_index :ahoy_events, "properties jsonb_path_ops", using: "gin"<% end %>
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
ahoy_matey-2.0.2 lib/generators/ahoy/templates/active_record_migration.rb
ahoy_matey-2.0.1 lib/generators/ahoy/templates/active_record_migration.rb
ahoy_matey-2.0.0 lib/generators/ahoy/templates/active_record_migration.rb