add relationships for booths
This commit is contained in:
parent
da6b5b8141
commit
3d9ac5a85f
8 changed files with 50 additions and 2 deletions
|
|
@ -1,2 +1,7 @@
|
|||
class Booth < ActiveRecord::Base
|
||||
belongs_to :conference
|
||||
has_many :booth_requests
|
||||
has_many :users, through: :booth_requests
|
||||
|
||||
validate :title, presence: true
|
||||
end
|
||||
|
|
|
|||
4
app/models/booth_request.rb
Normal file
4
app/models/booth_request.rb
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
class BoothRequest < ActiveRecord::Base
|
||||
belongs_to :booth
|
||||
belongs_to :user
|
||||
end
|
||||
|
|
@ -22,6 +22,7 @@ class Conference < ActiveRecord::Base
|
|||
has_many :supporters, through: :ticket_purchases, source: :user
|
||||
has_many :tickets, dependent: :destroy
|
||||
has_many :resources, dependent: :destroy
|
||||
has_many :booths, dependent: :destroy
|
||||
|
||||
has_many :lodgings, dependent: :destroy
|
||||
has_many :registrations, dependent: :destroy
|
||||
|
|
|
|||
|
|
@ -50,11 +50,13 @@ class User < ActiveRecord::Base
|
|||
has_many :votes, dependent: :destroy
|
||||
has_many :voted_events, through: :votes, source: :events
|
||||
has_many :subscriptions, dependent: :destroy
|
||||
has_many :booth_requests
|
||||
has_many :booths, through: :users_booths
|
||||
accepts_nested_attributes_for :roles
|
||||
|
||||
scope :admin, -> { where(is_admin: true) }
|
||||
scope :active, -> { where(is_disabled: false) }
|
||||
|
||||
|
||||
validates :email, presence: true
|
||||
|
||||
validates :username,
|
||||
|
|
|
|||
11
db/migrate/20170530112510_create_booth_requests.rb
Normal file
11
db/migrate/20170530112510_create_booth_requests.rb
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
class CreateBoothRequests < ActiveRecord::Migration
|
||||
def change
|
||||
create_table :booth_requests do |t|
|
||||
t.references :booth, index: true, foreign_key: true
|
||||
t.references :user, index: true, foreign_key: true
|
||||
t.string :role
|
||||
|
||||
t.timestamps null: false
|
||||
end
|
||||
end
|
||||
end
|
||||
13
db/schema.rb
13
db/schema.rb
|
|
@ -11,7 +11,7 @@
|
|||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(version: 20170516190048) do
|
||||
ActiveRecord::Schema.define(version: 20170530112510) do
|
||||
|
||||
create_table "ahoy_events", force: :cascade do |t|
|
||||
t.uuid "visit_id", limit: 16
|
||||
|
|
@ -31,6 +31,17 @@ ActiveRecord::Schema.define(version: 20170516190048) do
|
|||
t.datetime "updated_at"
|
||||
end
|
||||
|
||||
create_table "booth_requests", force: :cascade do |t|
|
||||
t.integer "booth_id"
|
||||
t.integer "user_id"
|
||||
t.string "role"
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
end
|
||||
|
||||
add_index "booth_requests", ["booth_id"], name: "index_booth_requests_on_booth_id"
|
||||
add_index "booth_requests", ["user_id"], name: "index_booth_requests_on_user_id"
|
||||
|
||||
create_table "booths", force: :cascade do |t|
|
||||
t.string "title"
|
||||
t.text "description"
|
||||
|
|
|
|||
7
test/factories/booth_requests.rb
Normal file
7
test/factories/booth_requests.rb
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
FactoryGirl.define do
|
||||
factory :booth_request do
|
||||
booth nil
|
||||
user nil
|
||||
role "MyString"
|
||||
end
|
||||
end
|
||||
7
test/models/booth_request_test.rb
Normal file
7
test/models/booth_request_test.rb
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
require 'test_helper'
|
||||
|
||||
class BoothRequestTest < ActiveSupport::TestCase
|
||||
# test "the truth" do
|
||||
# assert true
|
||||
# end
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue