Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 24, 2012 20:03:59

alexbel2404
Зарегистрирован: 2012-10-24
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Выборка из БД с условием

Добрый день! Подключаю к одной базе данных 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, но что-то не получилось

Офлайн

#2 Окт. 24, 2012 20:37:18

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

Выборка из БД с условием

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

Офлайн

#3 Окт. 24, 2012 20:48:15

alexbel2404
Зарегистрирован: 2012-10-24
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Выборка из БД с условием

Большое спасибо Второй вариант я кстати пробовал ранее, но не получилось. Сейчас воспользовался первым.

Офлайн

#4 Окт. 24, 2012 21:01:46

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

Выборка из БД с условием

alexbel2404
Второй вариант я кстати пробовал ранее, но не получилось.
Ошибка там у меня
Radusergroup.objects.get(Q(name=self.username), ~Q(groupname='HB-Suspend'))

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version