Tag: sqlalchemy

Возможно ли создать столбец в SQLAlchemy, который будет автоматически заполняться временем, когда он вставлен / обновлен в прошлый раз?

Возможно ли создать столбец в SQLAlchemy, который будет автоматически заполняться временем, когда он вставлен / обновлен в прошлый раз? Я создал модели, унаследованные от базового класса class Base(object): def __tablename__(self): return self.__name__.lower() id = Column(Integer, primary_key=True) last_time = Column(TIMESTAMP, server_default=func.now()) Base = declarative_base(cls=Base) class EntityModel(Base): __tablename__ = 'entities' settlement_id = Column(Integer, ForeignKey('settlements.id'), nullable=False) type = […]

Настройка Flask-SQLAlchemy для использования нескольких баз данных с Flask-Restless

У меня есть приложение Flask, которое использует Flask-SQLAlchemy, и я пытаюсь настроить его для использования нескольких баз данных с пакетом Flask-Restless. Согласно документам ( http://pythonhosted.org/Flask-SQLAlchemy/binds.html ), настройка ваших моделей на использование нескольких баз данных с __bind_key__ представляется довольно простой. Однако, похоже, это не работает для меня. Я создаю свое приложение и инициализирую свою базу данных […]

Динамически настраивать __tablename__ для sharding в SQLAlchemy?

Чтобы обрабатывать растущую таблицу базы данных, мы опираемся на имя таблицы. Таким образом, мы могли бы иметь таблицы базы данных, которые называются так: table_md5one table_md5two table_md5three Все таблицы имеют ту же схему. Как мы используем SQLAlchemy и динамически указываем имя_таблицы для класса, который соответствует этому? Похоже, что для классов declarative_base () необходимо предварительно указать имя […]

Как использовать подзапросы в SQLAlchemy для получения скользящей средней?

Моя проблема в том, что я хочу получить как список измерений, так и скользящую среднюю этих измерений. Я могу сделать это с помощью этого оператора SQL (синтаксис интервала postgresql): SELECT time, value, ( SELECT AVG(t2.value) FROM measurements t2 WHERE t2.time BETWEEN t1.time – interval '5 days' AND t1.time ) moving_average FROM measurements t1 ORDER BY […]

SQLAlchemy: избегать повторения в определении класса декларативного стиля

Я использую SQLAlchemy, и многие классы в моей объектной модели имеют одинаковые два атрибута: id и (integer & primary key) и имя (строка). Я стараюсь не объявлять их в каждом классе: class C1(declarative_base()): id = Column(Integer, primary_key = True) name = Column(String) #… class C2(declarative_base()): id = Column(Integer, primary_key = True) name = Column(String) #… […]

Создайте динамическую форму, используя флягу-wtf и sqlalchemy

У меня есть webapp, который позволяет пользователям создавать свои собственные поля для визуализации в форме позже. У меня есть модель Formfield: class Formfield(db.Model): id = db.Column(db.Integer, primary_key = True) form_id = db.Column(db.Integer, db.ForeignKey('formbooking.id')) label = db.Column(db.String(80)) placeholder_text = db.Column(db.String(80)) help_text = db.Column(db.String(500)) box_checked = db.Column(db.Boolean, nullable = True, default = False) options = db.Column(db.String) # […]

Может ли SQLAlchemy's session.merge () обновить свой результат с новыми данными из базы данных?

В документации SQLAlchemy говорится: « session.merge () сверяет текущее состояние экземпляра и связанных с ним дочерних элементов с существующими данными в базе данных». Обновляется ли состояние существующего объекта новыми данными из базы данных? Как? Когда?

Когда мне нужно вызвать flush () в SQLAlchemy?

Я новичок в SQLAlchemy и унаследовал несколько грязную базу кода без доступа к оригинальному автору. В коде написаны призывы к DBSession.flush() , казалось бы, в любое время, когда автор хотел убедиться, что данные были сохранены. Сначала я просто следил за шаблонами, которые я видел в этом коде, но поскольку я читаю документы, кажется, что это […]

Есть ли способ прозрачно выполнить проверку на объектах SQLAlchemy?

Есть ли способ выполнить проверку объекта после (или как) свойств, установленных до начала сеанса? Например, у меня есть устройство модели домена, обладающее свойством mac . Я хотел бы убедиться, что свойство mac содержит действительное и дезинфицированное значение mac перед его добавлением или обновлением в базе данных. Похоже, что подход Pythonic – это делать большинство вещей […]

Как удалить запись по id в Flask-SQLAlchemy

У меня есть таблица users в моей базе данных MySql. В этой таблице указаны поля name , name и age . Как удалить некоторую запись по id ? Теперь я использую следующий код: user = User.query.get(id) db.session.delete(user) db.session.commit() Но я не хочу делать какие-либо запросы перед удалением. Есть какой-либо способ сделать это? Я знаю, я […]

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