1
我有兩個模型。一個代表一個設備,另一個代表設備可能的屬性。在語義上,這可能是這樣的:具有可過濾屬性的Django模型
- 設備:
tractor
,屬性:wheels
,towing
- 設備:
lawnmower
,屬性:wheels
,blades
- 設備:
hedgetrimmer
,屬性:blades
我想查詢如下,
wheels = Attributes.objects.get(name='wheels')
blades = Attributes.objects.get(name='blades')
Equipment.objects.filter(has_attribute=wheels) \
.exclude(has_attribute=blades)
如何創建Django模型來執行此操作?
這看起來很簡單,但我太密集,看不到正確的解決方案。這突然出現在我的腦海
一種解決方案是在編碼整數列表像|109|14|3
和測試使用Equipment.objects.filter(attributes_contains='|%d|' % id)
屬性Attribute
ID的列表 - 但這似乎真的錯了。
這有助於。謝謝! – 2010-02-06 08:23:15