Найти - Пользователи
Полная версия: Выборка из БД с условием
Начало » Python для новичков » Выборка из БД с условием
1
alexbel2404
Добрый день! Подключаю к одной базе данных freeradius 2 проекта. Один из них на django, но с python'ом раньше никогда не работал - поэтому есть 1 вопрос.

Есть вырезка из кода:
groupName = Radusergroup.objects.get(pk=self.username).groupname
Нужно в этом коде, добавить условие, аналогично sql запросу
SELECT `groupname` FROM `radusergroup` WHERE `name` = {тут self.username} AND groupname != 'HB-Suspend';

Как это сделать? Пытался поиграть с object.filter, но что-то не получилось

reclosedev
groupName = Radusergroup.objects.filter(name=self.username).exclude(groupname='HB-Suspend').get().groupname
Или
from django.db.models import Q
groupName = Radusergroup.objects.get(name=self.username, ~Q(groupname='HB-Suspend')).groupname
https://docs.djangoproject.com/en/dev/topics/db/queries/
Если только groupname нужен, стоит взглянуть на
https://docs.djangoproject.com/en/dev/ref/models/querysets/#values
alexbel2404
Большое спасибо Второй вариант я кстати пробовал ранее, но не получилось. Сейчас воспользовался первым.
reclosedev
alexbel2404
Второй вариант я кстати пробовал ранее, но не получилось.
Ошибка там у меня
Radusergroup.objects.get(Q(name=self.username), ~Q(groupname='HB-Suspend'))
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB