master
  1# This file is auto-generated from the current state of the database. Instead
  2# of editing this file, please use the migrations feature of Active Record to
  3# incrementally modify your database, and then regenerate this schema definition.
  4#
  5# Note that this schema.rb definition is the authoritative source for your
  6# database schema. If you need to create the application database on another
  7# system, you should be using db:schema:load, not running all the migrations
  8# from scratch. The latter is a flawed and unsustainable approach (the more migrations
  9# you'll amass, the slower it'll run and the greater likelihood for issues).
 10#
 11# It's strongly recommended that you check this file into your version control system.
 12
 13ActiveRecord::Schema.define(version: 20170923150621) do
 14
 15  # These are extensions that must be enabled in order to support this database
 16  enable_extension "plpgsql"
 17  enable_extension "uuid-ossp"
 18
 19  create_table "activities", force: :cascade do |t|
 20    t.integer  "subject_id",               null: false
 21    t.string   "subject_type", limit: 255, null: false
 22    t.integer  "user_id",                  null: false
 23    t.datetime "created_at",               null: false
 24    t.datetime "updated_at",               null: false
 25    t.index ["subject_id"], name: "index_activities_on_subject_id", using: :btree
 26    t.index ["subject_type"], name: "index_activities_on_subject_type", using: :btree
 27    t.index ["user_id"], name: "index_activities_on_user_id", using: :btree
 28  end
 29
 30  create_table "avatars", force: :cascade do |t|
 31    t.integer  "user_id"
 32    t.datetime "created_at",                    null: false
 33    t.datetime "updated_at",                    null: false
 34    t.string   "avatar",            limit: 255
 35    t.boolean  "avatar_processing"
 36    t.string   "avatar_tmp",        limit: 255
 37    t.index ["user_id"], name: "index_avatars_on_user_id", using: :btree
 38  end
 39
 40  create_table "categories", force: :cascade do |t|
 41    t.string   "name",       limit: 255
 42    t.datetime "created_at"
 43    t.datetime "updated_at"
 44    t.string   "slug",       limit: 255
 45    t.index ["slug"], name: "index_categories_on_slug", using: :btree
 46  end
 47
 48  create_table "comments", force: :cascade do |t|
 49    t.integer  "user_id"
 50    t.integer  "creation_id"
 51    t.string   "text",        limit: 255
 52    t.integer  "disqus_id"
 53    t.datetime "created_at"
 54    t.datetime "updated_at"
 55    t.index ["creation_id"], name: "index_comments_on_creation_id", using: :btree
 56    t.index ["user_id"], name: "index_comments_on_user_id", using: :btree
 57  end
 58
 59  create_table "creations", force: :cascade do |t|
 60    t.string   "name",            limit: 255
 61    t.text     "story"
 62    t.datetime "created_at"
 63    t.datetime "updated_at"
 64    t.integer  "user_id"
 65    t.string   "image",           limit: 255
 66    t.string   "watermark",       limit: 255
 67    t.integer  "photos_count",                default: 0
 68    t.integer  "favorites_count",             default: 0
 69    t.integer  "category_id"
 70    t.index ["category_id"], name: "index_creations_on_category_id", using: :btree
 71    t.index ["created_at"], name: "index_creations_on_created_at", using: :btree
 72    t.index ["user_id"], name: "index_creations_on_user_id", using: :btree
 73  end
 74
 75  create_table "delayed_jobs", force: :cascade do |t|
 76    t.integer  "priority",               default: 0
 77    t.integer  "attempts",               default: 0
 78    t.text     "handler"
 79    t.text     "last_error"
 80    t.datetime "run_at"
 81    t.datetime "locked_at"
 82    t.datetime "failed_at"
 83    t.string   "locked_by",  limit: 255
 84    t.string   "queue",      limit: 255
 85    t.datetime "created_at",                         null: false
 86    t.datetime "updated_at",                         null: false
 87    t.index ["priority", "run_at"], name: "delayed_jobs_priority", using: :btree
 88  end
 89
 90  create_table "favorites", id: :integer, default: -> { "nextval('likes_id_seq'::regclass)" }, force: :cascade do |t|
 91    t.integer  "user_id"
 92    t.integer  "creation_id"
 93    t.datetime "created_at"
 94    t.datetime "updated_at"
 95    t.index ["creation_id"], name: "index_favorites_on_creation_id", using: :btree
 96    t.index ["user_id"], name: "index_favorites_on_user_id", using: :btree
 97  end
 98
 99  create_table "interests", force: :cascade do |t|
100    t.string   "name",       limit: 255
101    t.datetime "created_at",             null: false
102    t.datetime "updated_at",             null: false
103  end
104
105  create_table "locations", id: :uuid, default: -> { "uuid_generate_v4()" }, force: :cascade do |t|
106    t.uuid     "locatable_id"
107    t.string   "locatable_type", limit: 255
108    t.string   "latitude",       limit: 255
109    t.string   "longitude",      limit: 255
110    t.string   "city",           limit: 255
111    t.string   "country",        limit: 255
112    t.datetime "created_at"
113    t.datetime "updated_at"
114    t.index ["locatable_id", "locatable_type"], name: "index_locations_on_locatable_id_and_locatable_type", using: :btree
115  end
116
117  create_table "photos", force: :cascade do |t|
118    t.integer  "imageable_id"
119    t.string   "image",             limit: 255
120    t.datetime "created_at"
121    t.datetime "updated_at"
122    t.string   "image_tmp",         limit: 255
123    t.boolean  "image_processing"
124    t.string   "content_type",      limit: 255
125    t.string   "original_filename", limit: 255
126    t.float    "latitude"
127    t.float    "longitude"
128    t.string   "sha256",            limit: 255
129    t.string   "watermark",         limit: 255
130    t.string   "imageable_type",    limit: 255
131    t.index ["imageable_id", "imageable_type"], name: "index_photos_on_imageable_id_and_imageable_type", using: :btree
132    t.index ["imageable_id"], name: "index_photos_on_imageable_id", using: :btree
133  end
134
135  create_table "taggings", force: :cascade do |t|
136    t.integer  "tag_id"
137    t.integer  "taggable_id"
138    t.string   "taggable_type", limit: 255
139    t.integer  "tagger_id"
140    t.string   "tagger_type",   limit: 255
141    t.string   "context",       limit: 128
142    t.datetime "created_at"
143    t.index ["context"], name: "index_taggings_on_context", using: :btree
144    t.index ["tag_id", "taggable_id", "taggable_type", "context", "tagger_id", "tagger_type"], name: "taggings_idx", unique: true, using: :btree
145    t.index ["tag_id"], name: "index_taggings_on_tag_id", using: :btree
146    t.index ["taggable_id", "taggable_type", "context"], name: "index_taggings_on_taggable_id_and_taggable_type_and_context", using: :btree
147    t.index ["taggable_id", "taggable_type", "tagger_id", "context"], name: "taggings_idy", using: :btree
148    t.index ["taggable_id"], name: "index_taggings_on_taggable_id", using: :btree
149    t.index ["taggable_type"], name: "index_taggings_on_taggable_type", using: :btree
150    t.index ["tagger_id", "tagger_type"], name: "index_taggings_on_tagger_id_and_tagger_type", using: :btree
151    t.index ["tagger_id"], name: "index_taggings_on_tagger_id", using: :btree
152    t.index ["tagger_type"], name: "index_taggings_on_tagger_type", using: :btree
153  end
154
155  create_table "tags", force: :cascade do |t|
156    t.string  "name",           limit: 255
157    t.integer "taggings_count",             default: 0
158    t.index ["name"], name: "index_tags_on_name", unique: true, using: :btree
159  end
160
161  create_table "tools", force: :cascade do |t|
162    t.string   "name",        null: false
163    t.text     "description"
164    t.string   "asin",        null: false
165    t.datetime "created_at"
166    t.datetime "updated_at"
167    t.index ["asin"], name: "index_tools_on_asin", using: :btree
168    t.index ["name"], name: "index_tools_on_name", unique: true, using: :btree
169  end
170
171  create_table "tutorials", force: :cascade do |t|
172    t.string   "heading",     limit: 255
173    t.text     "description"
174    t.string   "url",         limit: 255
175    t.integer  "user_id"
176    t.datetime "created_at",              null: false
177    t.datetime "updated_at",              null: false
178    t.string   "image_url",   limit: 255
179    t.string   "author",      limit: 255
180    t.string   "author_url",  limit: 255
181    t.index ["user_id"], name: "index_tutorials_on_user_id", using: :btree
182  end
183
184  create_table "user_sessions", id: :uuid, default: -> { "uuid_generate_v4()" }, force: :cascade do |t|
185    t.integer  "user_id"
186    t.datetime "created_at"
187    t.datetime "updated_at"
188    t.string   "key",         limit: 255
189    t.string   "ip",          limit: 255
190    t.text     "user_agent"
191    t.datetime "accessed_at"
192    t.datetime "revoked_at"
193    t.index ["accessed_at"], name: "index_user_sessions_on_accessed_at", using: :btree
194    t.index ["key"], name: "index_user_sessions_on_key", using: :btree
195    t.index ["revoked_at"], name: "index_user_sessions_on_revoked_at", using: :btree
196    t.index ["user_id"], name: "index_user_sessions_on_user_id", using: :btree
197  end
198
199  create_table "users", force: :cascade do |t|
200    t.string   "email",                  limit: 255, default: "", null: false
201    t.string   "password_digest",        limit: 128, default: "", null: false
202    t.string   "reset_password_token",   limit: 255
203    t.datetime "reset_password_sent_at"
204    t.datetime "created_at"
205    t.datetime "updated_at"
206    t.string   "name",                   limit: 255
207    t.string   "website",                limit: 255
208    t.string   "twitter",                limit: 255
209    t.string   "facebook",               limit: 255
210    t.string   "city",                   limit: 255
211    t.string   "authentication_token",   limit: 255
212    t.string   "full_address",           limit: 255
213    t.integer  "creations_count",                    default: 0
214    t.boolean  "admin"
215    t.integer  "photos_count",                       default: 0
216    t.index ["authentication_token"], name: "index_users_on_authentication_token", unique: true, using: :btree
217    t.index ["created_at"], name: "index_users_on_created_at", using: :btree
218    t.index ["email"], name: "index_users_on_email", unique: true, using: :btree
219    t.index ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true, using: :btree
220  end
221
222  create_table "users_interests", id: false, force: :cascade do |t|
223    t.integer "user_id"
224    t.integer "interest_id"
225    t.index ["interest_id", "user_id"], name: "index_users_interests_on_interest_id_and_user_id", using: :btree
226  end
227
228end