2013-03-06 243 views
2

我是django和web框架的新手。 我試圖篩選在Django模型賦予其屬性的集團子在Django中過濾模型

pack=My_pack.objects.get(Group=sumthing) 

現在我的組屬性包含「/」 爲如

Group="System/Application" 

,我想一對由sepearted值過濾模型只給出一個值假設「系統」,那麼如何做dat?

+0

+1使用貧民窟談話 – 2013-03-06 18:53:54

回答

1

這將是該查詢的語法:

pack = My_pack.objects.get(group__icontains='System') 
1

,你可以以不同的方式使用過濾器在Django,

My_pack.objects.get只會帶一個實例,如果有多個實例存在,它會帶來d給你錯誤。所以你需要把這個封入到try塊中。

pack = My_pack.objects.get(group__icontains='System')

,另一方面

My_pack.objects.filter將帶來超過一個實例,如果沒有實例發現它會帶來和空單[]

pack = My_pack.objects.filter(group__startswith='System')

也您可以使用名爲get_object_or_404的其中一個快捷功能。這與get相似。不同之處在於你不需要把它放在try塊中。如果它帶來的實例會給實例作爲返回值,但它沒有找到任何實例,那麼它會拋出一個404狀態消息。

pack = get_object_or_404(My_pack, group__startswith='System')