Tag: sqlalchemy

Пароль не зашифровывается при обновлении

Являясь новичком на python, я не совсем понимаю, почему я получаю непоследовательные результаты. Я регистрирую пользователя, а пароль в моем столе заканчивается хэшированной версией. Когда пользователь обновляет свой пароль, пароль в таблице заканчивается непроверенной версией. Очевидно, я хочу хешированную версию. Что я делаю не так? (Я использую SQLAlchemy и mysql, если это имеет значение.) У […]

Правило зависимости пыталось заглушить первичный ключ в SQLAlchemy, когда ограничение внешнего ключа является частью составного первичного ключа

У меня есть следующие определения модели class Foo(Base): __tablename__ = 'foo' id = Column(Integer, primary_key=True) name = Column(String(200)) class FooCycle(Base): __tablename__ = 'foocycle' foo_id = Column( String(50), ForeignKey('foo.id'), primary_key=True ) some_number = Column( Integer, primary_key=True, ) foo = relationship("Foo", backref="cycles") и следующий тестовый пример class HierarchicModelTest(unittest.TestCase): def test_create_data_via_orm_save_twice(self): # get_session is a convenience wrapper to […]

не удается поймать SQLAlchemy IntegrityError

Попытайтесь, как я мог, я, похоже, не поймал sqlalchemy IntegrityError правильно: from sqlalchemy import exc try: insert_record() except exc.IntegrityError, exc: print exc # this is never called handle_elegantly() # this is never called Как и следовало ожидать: IntegrityError: (IntegrityError) insert or update on table "my_table" violates foreign key constraint "my_table_some_column_fkey" Я попытался явно: from sqlalchemy.exc […]

SQLAlchemy StaleDataError при удалении элементов, вставленных через ORM sqlalchemy.orm.exc.StaleDataError

У меня проблема, когда я получаю ошибку, такую ​​как эта: "MyPyramidApplication Error"<class 'sqlalchemy.orm.exc.StaleDataError'>: DELETE statement on table 'page_view' expected to delete 6 row(s); Only 0 were matched. Итак, у меня есть хорошая идея, что вызывает проблему, но я не смог ее решить. У меня есть модель page_view, у которой есть внешний ключ на page_id и […]

Flask-SQLAlchemy create_all ()

Когда я запускаю команду dbManager.create_all (), она запускается с ошибками, но не создает таблицы. Когда я удаляю базу данных и запускаю команду create_all (), я получаю такую ​​базу данных, как ##### ошибка, которую я должен получить, но когда база данных существует, ничего не происходит. Кто-нибудь может понять, что я делаю неправильно? from blogconfig import dbManager […]

SQLAlchemy left join с использованием подзапроса

Допустим, есть таблица «posts», которая содержит записи в блогах, и другую таблицу «избранное», которая связывает имя пользователя с сообщением. Многие пользователи могут любить сообщение, поэтому отношения – это одно сообщение для многих избранных. Я пытаюсь понять синтаксис для добавления сообщений в избранное, но мне нужны только те избранные, где пользователь является текущим пользователем. Мне нужно […]

Sqlalchemy странное поведение при вставке нескольких строк и возврате первичного ключа

Я заметил что-то странное при вставке нескольких строк и возвращении первичных ключей. Если я добавлю использовать значения параметров в запросе isert, я получаю ожидаемое поведение, однако при передаче значений курсору ничего не возвращается. Возможно, это ошибка, или я что-то не понимаю? Моя версия sqlachemy составляет 0.9.4, ниже, как воспроизвести ошибку: from sqlalchemy import create_engine, Column, […]

sqlalchemy – элегантный способ борьбы с несколькими дополнительными фильтрами?

Предположим, у меня есть метод запроса с дополнительными фильтрами сервера. Я хочу достичь: если я передаю некоторое значение None, чтобы фильтровать параметры, тогда сделайте фильтр, если значение фильтра None, а затем просто проигнорируйте его. def get_query_results(filter1=None, filter2=None, …): res = models.Item.query if filter1 is not None: res = res.filter(filter1=filter1) if filter2 is not None: res […]

SQLAlchemy с несколькими первичными ключами не устанавливает автоматически

У меня была простая таблица: class test(Base): __tablename__ = 'test' id = Column(Integer, primary_key=True) title = Column(String) def __init__(self, title): self.title = title При использовании этой таблицы идентификатор был установлен автоматически. Я хочу добавить другое поле, которое является уникальным и эффективным для поиска, поэтому я добавил поле: id2 = Column(String, primary_key=True) И обновил конструктор: def […]

проблема при передаче данных с использованием объекта сеанса SQLAlchemy в цикле

У меня проблема с базой данных SQLalchemy. Вот мой сценарий. У меня есть список записей, которые нужно добавить в таблицу. Как только записи добавляются в таблицу, мне нужно получить вставленные идентификаторы записей и сделать другую вставку во вторую таблицу. Я выполняю эту операцию в течение одного сеанса. Структура кода приведена ниже, поскольку мне не разрешено […]

Python - лучший язык программирования в мире.