Database schema to store AND, OR relation, association
Posted
by
user455387
on Stack Overflow
See other posts from Stack Overflow
or by user455387
Published on 2010-12-09T20:38:09Z
Indexed on
2010/12/27
12:54 UTC
Read the original article
Hit count: 197
Many thanks for your help on this.
In order for an entreprise to get a call for tender it must meet certain requirements.
For the first example the enterprise must have a minimal class 4, and have qualification 2 in sector 5.
Minimal class is always one number.
Qualification can be anything (single, or multiple using AND, OR logical operators)
I have created tables in order to map each number to it's given name. Now I need to store requirements in the database.
- minimal class 4
- Sector Qualification 5.2
- minimal class 2
- Sector Qualifications 3.9 and 3.10
- minimal class 3
- Sector Qualifications 6.1 or 6.3
- minimal class 1
- Sector Qualifications (3.1 and 3.2) or 5.6
class Domain < ActiveRecord::Base
has_many :domain_classes
has_many :domain_sectors
has_many :sector_qualifications, :through => :domain_sectors
end
class DomainClass < ActiveRecord::Base
belongs_to :domain
end
class DomainSector < ActiveRecord::Base
belongs_to :domain
has_many :sector_qualifications
end
class SectorQualification < ActiveRecord::Base
belongs_to :domain_sector
end
create_table "domains", :force => true do |t|
t.string "name"
end
create_table "domain_classes", :force => true do |t|
t.integer "number"
t.integer "domain_id"
end
create_table "domain_sectors", :force => true do |t|
t.string "name"
t.integer "number"
t.integer "domain_id"
end
create_table "sector_qualifications", :force => true do |t|
t.string "name"
t.integer "number"
t.integer "domain_sector_id"
end
© Stack Overflow or respective owner