मैं एक रूबी ऑन रेल्स परियोजना में निम्न कार्य करने की कोशिश कर रहा हूँ के माध्यम से:has_many: एक has_and_belongs_to_many संघ
class FoodItem < ActiveRecord::Base
has_and_belongs_to_many :food_categories
has_many :places, :through => :food_categories
end
class FoodCategory < ActiveRecord::Base
has_and_belongs_to_many :food_items
belongs_to :place
end
class Place < ActiveRecord::Base
has_many :food_categories
has_many :food_items, :through => :food_category
end
लेकिन उदाहरण विधि some_food_item.places
बुला मुझे निम्न त्रुटि देता है:
ActiveRecord::StatementInvalid: PGError: ERROR: column
food_categories.food_item_id does not exist
LINE 1: ...laces".id = "food_categories".place_id WHERE (("food_cate...
: SELECT "places".* FROM "places" INNER JOIN "food_categories" ON "places".id = "food_categories".place_id WHERE (("food_categories".food_item_id = 1))
कौन सा सही मायने रखता है - FoodItem और FoodCategory पर एचएबीटीएम की वजह से मेरे पास food_categories_food_items
नामक मानचित्रण तालिका है।
तालिका में food_item_id
की तलाश करने के बजाय मैपिंग तालिका के माध्यम से सही जगहों को देखने के लिए मुझे some_food_item.places
प्राप्त करने के लिए क्या करना है?
यह निश्चित रूप से मदद करता है! समाधान के लिए और एचएबीटीएम पर सिर के लिए भी धन्यवाद। मुझे यकीन है कि यह एकमात्र जगह नहीं होगी जिसे मैं इस समाधान को लागू करूंगा! –