คำถามติดแท็ก polymorphic-associations

5
เป็นไปได้ที่จะทำ MySQL foreign key ให้กับหนึ่งในสองตารางที่เป็นไปได้หรือไม่?
นี่คือปัญหาของฉันฉันมีสามตาราง ภูมิภาคประเทศรัฐ ประเทศสามารถอยู่ภายในภูมิภาครัฐสามารถอยู่ในภูมิภาค ภูมิภาคคือสุดยอดห่วงโซ่อาหาร ตอนนี้ฉันกำลังเพิ่มตาราง popular_areas ที่มีสองคอลัมน์ region_id และ popular_place_id เป็นไปได้ไหมที่จะทำให้ popular_place_id เป็นกุญแจสำคัญในต่างประเทศหรือทั้งสองรัฐ ฉันอาจจะต้องเพิ่มคอลัมน์ popular_place_type เพื่อกำหนดว่า id อธิบายประเทศหรือรัฐด้วยวิธีใด

4
วิธีสร้างการย้ายข้อมูลเพื่อสร้างความหลากหลายของการอ้างอิง
ฉันมีตารางผลิตภัณฑ์และต้องการเพิ่มคอลัมน์: t.references :imageable, :polymorphic => true ฉันพยายามสร้างการย้ายข้อมูลสำหรับสิ่งนี้โดยทำ: $ rails generate migration AddImageableToProducts imageable:references:polymorphic แต่เห็นได้ชัดว่าฉันทำผิด มีใครให้คำแนะนำได้ไหม ขอบคุณ เมื่อฉันพยายามใส่มันด้วยตนเองหลังจากสร้างการย้ายข้อมูลฉันก็ทำเช่นนี้: class AddImageableToProducts < ActiveRecord::Migration def self.up add_column :products, :imageable, :references, :polymorphic => true end def self.down remove_column :products, :imageable end end และยังไม่ได้ผล

3
ActiveRecord, has_many: through และ Polymorphic Association
folks, ต้องการให้แน่ใจว่าฉันเข้าใจสิ่งนี้ถูกต้อง และโปรดเพิกเฉยต่อกรณีการสืบทอดที่นี่ (SentientBeing) โดยพยายามมุ่งเน้นไปที่โมเดลหลายรูปแบบใน has_many: ผ่านความสัมพันธ์ ที่กล่าวมาให้พิจารณาดังต่อไปนี้ ... class Widget < ActiveRecord::Base has_many :widget_groupings has_many :people, :through => :widget_groupings, :source => :person, :conditions => "widget_groupings.grouper_type = 'Person'" has_many :aliens, :through => :widget_groupings, :source => :alien, :conditions => "video_groupings.grouper_type = 'Alien'" end class Person < ActiveRecord::Base has_many :widget_groupings, :as => …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.