Tag: sqlalchemy

sqlalchemy Перемещение столбцов mixin до конца

У меня есть модель sqlalchemy, где все большинство таблиц / объектов имеют поле примечаний. Поэтому, чтобы попробовать следовать принципу DRY, я переместил поле в класс mixin. class NotesMixin(object): notes = sa.Column(sa.String(4000) , nullable=False, default='') class Service(Base, NotesMixin): __tablename__ = "service" service_id = sa.Column(sa.Integer, primary_key=True) name = sa.Column(sa.String(255), nullable=False, index=True, unique=True) class Datacenter(Base, NotesMixin): __tablename__ = […]

Ленивая загрузка столбцов в sqlalchemy

Возможно ли в sqlalchemy ленивая загрузка столбца? У меня есть большой столбец BLOB, который я обычно использую, но в некоторых случаях я не хочу загружать этот конкретный столбец (в то время как я хотел бы иметь объект ORM). Можно ли без добавления отдельной таблицы?

Родительский экземпляр не связан с сеансом; ленивая загрузка атрибута «account» не может продолжаться

При попытке выполнить следующую операцию: for line in blines: line.account = get_customer(line.AccountCode) Я получаю сообщение об ошибке при попытке присвоить значение line.account : DetachedInstanceError: Parent instance <SunLedgerA at 0x16eda4d0> is not bound to a Session; lazy load operation of attribute 'account' cannot proceed Я делаю что-то неправильно??

Как применять значения столбца по умолчанию перед фиксацией в sqlalchemy

У меня есть декларативно-базовая модель: class User(Base): id = Column(Integer, primary_key=True) money = Column(Integer, default=100) и затем я запускаю >>> u = User() >>> u.money None Как я могу заполнить значения по умолчанию с помощью sqlalchemy, не записывая ничего в базу данных?

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

У меня есть файл csv с первой строкой в ​​виде полей и оставшихся строк в качестве данных. С этим файлом я хотел бы создать таблицу. Поскольку поля довольно длинные и могут меняться, я хочу динамически их создать. После нескольких попыток и поиска я решил, что могу создать класс с фабрики, а затем назначить атрибуты новому […]

Отключить объект из сеанса

Можно ли отвязать объект из сеанса SQLAlchemy? Я использовал его для deepcopy , но так как это кажется невозможным при использовании прокси- deepcopy , я ищу другое решение для удаления объекта из сеанса, чтобы добавить его в другое.

Как запросить таблицу, в sqlalchemy

Теперь я знаю, как запросить модель. Предположим, что существует модель Question : class Question(Base): __tablename__ = "questions" id=Column(…) user_id=Column(…) … Теперь я могу сделать: question = Session.query(Question).filter_by(user_id=123).one() Но теперь у меня есть таблица (а не модель): questions = Table('questions', Base.metadata, Column(id, …), Column(user_id, …), ….) Как запросить его как то, что я делаю с моделями? […]

SQLAlchemy и пустые столбцы

Когда я пытаюсь вставить новую запись в базу данных с помощью SQLAlchemy, и я не заполняю все значения, она пытается вставить их как «Нет» (вместо их удаления). Затем он жалуется на ошибки «не может быть пустым». Есть ли способ, чтобы он просто опускал столбцы из SQL-запроса, если я также пропустил их при объявлении экземпляра?

Динамическое установление соединения базы данных Flask-SQLAlchemy в приложении с несколькими арендаторами

У меня есть « многопользовательское » флеш -приложение, которое взаимодействует с 1 «основной» базой MySQL (используется для поиска информации о клиенте) и десятками «клиентских» баз данных MySQL (все они имеют одну и ту же схему). В настоящее время я пытаюсь использовать SQLAlchemy вместе с расширением Flask-SQLAlchemy для взаимодействия с базами данных, но я изо всех […]

Примеры проектов SQLAlchemy

Есть ли хорошие примеры проектов, которые используют SQLAlchemy (с классами Python), на которые я могу смотреть? (который имеет по крайней мере некоторые базовые операции с базой данных – CRUD) Я считаю, что это хороший способ изучить любой язык программирования, просмотрев чей-то код. Благодаря!

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