У меня есть пользовательская база данных и база данных фруктов, где пользователь заполняет форму галочки, чтобы выбрать, какие у них есть фрукты.Выделить все поля, которые являются истинными
В профиле я хотел бы отразить эту информацию, но я не могу понять, как бы я запросил базу данных в web2py, чтобы показать все логические поля, которые установлены на True
.
Можно ли это сделать с помощью SQL-запроса или мне нужно отфильтровать результаты при выборе записи фруктов пользователей?
Вот мой DB модель:
db.define_table('fruit',
Field('id', 'reference auth_user'),
Field('apple','boolean',label=T('Apple')),
Field('apricot','boolean',label=T('Apricot')),
Field('cherry','boolean',label=T('Cherry')),
Field('fig','boolean', label=T('Fig')),
Field('lychee','boolean', label=T('Lychee')),
Field('peach','boolean', label=T('Peach')),
Field('pear','boolean', label=T('Pear')),
Field('plum','boolean', label=T('Plum')))
Вот мой контроллер (очевидно, он не работает Это просто возвращает <Set 0>
.).
Я попробовал несколько различных комбинаций из погуглить, но ни один из них желаемых результатов:
def profile():
id = auth.user.id or redirect(URL('default', 'index'))
user = db.auth_user[id]
fruit = db.fruit(id=id)
produce = db(fruit == True)
return dict(user=user, produce=produce)
Благодарим вас за разъяснение. Это прекрасно работает – 4BY