你好,我有這兩個模型,我想檢查我的模型協會正在工作,它應該通過滑軌控制檯的方式。在Rails控制檯模型關聯測試?
我無法完成關聯工作。關係如下: 一個事件有一個規則,一個規則屬於一個事件。沒有事件,這不可能是一個規則,它不可能是沒有規則的事件。
任何想法如何使用rails控制檯進行測試?
MODEL 1:
class Event < ActiveRecord::Base
has_and_belongs_to_many :users
has_one :rule
has_many :grand_prixes
belongs_to :eventable, polymorphic: :true
end
MODEL 2
class Rule < ActiveRecord::Base
belongs_to :events
end
規則架構:
create_table "rules", force: :cascade do |t|
t.boolean "abs"
t.boolean "tc"
t.boolean "allow_auto_clutch"
t.boolean "allow_sc"
t.boolean "allow_throttle_blip"
t.boolean "dynamic_track"
t.integer "damage_mult"
t.integer "fuel_rate"
t.integer "tyre_wear_rate"
t.integer "quali_percentage"
t.integer "min_valid_laps"
t.integer "event_id"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
add_index "rules", ["event_id"], name: "index_rules_on_event_id"
活動架構:
create_table "events", force: :cascade do |t|
t.string "event_type"
t.string "name", null: false
t.datetime "starting_date"
t.datetime "ending_date"
t.integer "eventable_id"
t.string "eventable_type"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
add_index "events", ["eventable_type", "eventable_id"], name: "index_events_on_eventable_type_and_eventable_id"
提前致謝。
事件它是多態的,因爲實現了其他關係。 – Nikos4Life
_Sidenote_:'rules'上應該有外鍵''event_id''。將這個強制性一致性檢查器添加到模式中可能會說明發生了什麼問題。另外,'rules'上的'['event_id']'應該是一個唯一索引(由於「一個規則屬於一個事件」。) – mudasobwa
我在遷移中寫了如下內容: 'add_index「rules」,[ event_id「],名稱:」index_rules_on_event_id「,唯一:true' 現在我確實在我的模式中使用了它,但我無法通過控制檯進行鏈接。 感謝您的快速回復:) – Nikos4Life