17
Я пытаюсь получить все строки из таблицы.sqlalchemy, выберите все строки
В контроллере у меня есть:
meta.Session.query(User).all()
В результате [, ]
, но у меня есть 2 строки в этой таблице.
Я использую эту модель для таблицы:
import hashlib
import sqlalchemy as sa
from sqlalchemy import orm
from allsun.model import meta
t_user = sa.Table("users",meta.metadata,autoload=True)
class Duplicat(Exception):
pass
class LoginExistsException(Exception):
pass
class EmailExistsException(Exception):
pass
И дальше, в том же файле:
class User(object):
def loginExists(self):
try:
meta.Session
.query(User)
.filter(User.login==self.login)
.one()
except orm.exc.NoResultFound:
pass
else:
raise LoginExistsException()
def emailExists(self):
try:
meta
.Session
.query(User)
.filter(User.email==self.email)
.one()
except orm.exc.NoResultFound:
pass
else:
raise EmailExistsException()
def save(self):
meta.Session.begin()
meta.Session.save(self)
try:
meta.Session.commit()
except sa.exc.IntegrityError:
raise Duplicat()
orm.mapper(User, t_user)
. , , , , , , ,
Существует не достаточно информации, чтобы воспроизвести вашу проблему. Что такое '[,]'? Это недопустимое выражение python, но похоже, что вы печатаете список из двух элементов: '[<Пользовательский экземпляр в ...>, <Пользовательский экземпляр в ...>]' на HTML без надлежащего экранирования. –
Чтобы решить это, вы можете 'из флажка импортировать Markup', а затем' return Markup ("% r")% User.query.all() '. –