Tag: sqlalchemy

Наследование Postgres с SQLAlchemy

У меня есть один вопрос о создании наследования таблицы PostgreSQL с помощью SQLAlchemy. У меня есть две таблицы: CREATE TABLE his ( idg integer, idfk integer, idh integer NOT NULL defautl nextval('his_seq'), "type" character varying, CONSTRAINT __his_pkey PRIMARY KEY (idh) ); CREATE TABLE data ( "text" character varying, ) INHERITS (his); Перед выполнением любой команды […]

Использование Flask-SQLAlchemy без колбы

У меня была небольшая веб-служба, созданная с использованием Flask и Flask-SQLAlchemy которой была только одна модель. Теперь я хочу использовать одну и ту же базу данных, но с помощью приложения с командной строкой, поэтому я хотел бы отказаться от зависимости от Flask . Моя модель выглядит так: class IPEntry(db.Model): id = db.Column(db.Integer, primary_key=True) ip_address = […]

Переопределить свойство только для чтения с столбцом только для чтения, который получает то же значение

Игровой движок предоставляет мне класс Player который обладает уникальным свойством только для чтения, чтобы идентифицировать игроков. Я хотел бы «преобразовать» это в Column SQLAlchemy, чтобы я мог запросить игроков с ним следующим образом: query = session.query(Player).filter(Player.uniqueid=='STEAM_0:0:1234567') player = query.one_or_none() if player is None: player = Player(uniqueid='STEAM_0:0:1234567') Вот как выглядит мой класс: class Player(game.Player, db.Model): _uniqueid […]

SQLAlchemy: изменяет ли ящик объекты моего объекта?

Я пытаюсь использовать версию SQLAlchemy для хранения моих объектов в базе данных. У меня есть функция save(…) для этой цели: #!/usr/bin/env python # encoding: utf-8 from sqlalchemy import Column, Integer, MetaData, String, Table, create_engine from sqlalchemy.orm import mapper, sessionmaker class MyClass(object): def __init__(self, title): self.title = title def __str__(self): return '%s' % (self.title) def save(object_list): […]

Помощь с копией и глубокой копией в Python

Думаю, я пытался слишком много просить в своем предыдущем вопросе, так что извиняюсь за это. Позвольте мне изложить свою ситуацию так же просто, как я могу на этот раз. В принципе, у меня есть куча словарей, которые ссылаются на мои объекты, которые, в свою очередь, отображаются с использованием SQLAlchemy. Все в порядке со мной. Однако […]

Игнорировать блокировку в базе данных MYSQL в запросе Sqlalchemy

Используя SQLAlchemy для запроса базы данных MySQL, я получаю следующую ошибку: sqlalchemy.exc.OperationalError: (raised as a result of Query-invoked autoflush; consider using a session.no_autoflush block if this flush is occurring prematurely) (_mysql_exceptions.OperationalError) (1205, 'Lock wait timeout exceeded; try restarting transaction') Во-первых, я предполагаю, что комментарий к сообщению об ошибке «рассмотрим использование блока session.no_autoflush, если этот флеш […]

Ошибка в отказе SQLAlchemy после исключения БД?

Приложение SQLAlchemy (работает над MariaDB) включает в себя две модели MyModelA и MyModelB где последняя является дочерней записью первого: class MyModelA(db.Model): a_id = db.Column(db.Integer, nullable=False, primary_key=True) my_field1 = db.Column(db.String(1024), nullable=True) class MyModelB(db.Model): b_id = db.Column(db.Integer, nullable=False, primary_key=True) a_id = db.Column(db.Integer, db.ForeignKey(MyModelA.a_id), nullable=False) my_field2 = db.Column(db.String(1024), nullable=True) Это экземпляры MyModelA и MyModelB которые я создаю: >>> […]

Массовые вставки с помощью Flask-SQLAlchemy

Я использую Flask-SQLAlchemy, чтобы сделать довольно большую объемную вставку из 60 тыс. Строк. У меня также есть отношение «многие ко многим» в этой таблице, поэтому я не могу использовать db.engine.execute для этого. Перед вставкой мне нужно найти похожие элементы в базе данных и изменить вставку на обновление, если найден дубликат элемента. Я мог бы сделать […]

SQLALchemy DB Session with Flask, Postgres

Я использую SQLAlchemy с Flask, как показано здесь: http://flask.pocoo.org/docs/patterns/sqlalchemy/ У меня есть набор тестов Selenium, который сначала запускается с Firefox, а затем с Chrome. Перед началом тестов в каждом браузере таблицы в тестовой базе данных (PostgreSQL) отбрасываются и создаются. Он отлично работает для первых браузеров, но для второго браузера попытка создания / удаления SQL просто […]

Flask-SQLAlchemy: Тип столбца фото

В веб-приложении, которое я кодирую с помощью Flask / SQLAlchemy, некоторым моим моделям нужен тип столбца «Фото», который обрабатывал бы хранение исходного изображения где-то в файловой системе и создавал разные размеры уменьшенных изображений. В идеале Id хочет что-то вроде: class MyModel(Base): id = Column(Integer, primary_key=True) photo = Column(Photo(root="/path/to/photos/", formats={ "big" : "800×600", "small" : "400×300", […]

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