2013-12-02 4 views
-1

Я хочу сохранить в Оксе этого запросаДействительно простой Django запрос

select id from principal_dep where dep_name='Field'; 

пользователь выбирает поле в форме. У меня есть это, очевидно, неверное

aux = Dep.objects.filter(id=request.POST['dept']) 

как я могу это сделать ?, помощь!

ответ

2
dep = Dep.objects.get(dep_name=request.POST['dept']) 
dep_id = dep.id 

или

dep_ids = Dep.objects.filter(dep_name=request.POST['dept']).values_list('id', flat=True) 
+0

Спасибо. Опять же, я не хотел повторяться, но у меня не было времени – user2782149

+0

Обратите внимание, что при правильности это вызовет исключение, если более чем одна строка имеет это значение для 'dep_name'. Чтобы этого избежать, используйте 'filter' вместо' get' и проверьте размер получаемых qs (либо используя '.count()', либо 'len' в зависимости от конкретной ситуации). Или поймайте исключение. –

Смежные вопросы