Похожие чаты

Кто работал с sqlalchemy async 2.0? Есть exchanges поле many to

one в User и в него надо добавить Exchange запись.
Не могу разобраться

class User(BaseModel):
__tablename__ = "users"

user_id = Column(BigInteger, primary_key=True, nullable=False)
username = Column(VARCHAR(32), unique=False, nullable=True)
ip = Column(VARCHAR(32), unique=True, nullable=True)
deviceId = Column(VARCHAR(10), unique=True, nullable=False)

exchanges: Mapped[List['Exchange']] = relationship(back_populates='user', uselist=True)

created_at = Column(DateTime(timezone=True), server_default=func.now())
updated_at = Column(DateTime(timezone=True), onupdate=func.now())

def __str__(self):
return self.username


class Exchange(BaseModel):
class ExchangeStatus(Enum):
pending = 'pending'
waiting_payment = 'waiting_payment'
exchanging = 'exchanging'
finished = 'finished'

__tablename__ = "exchanges"

id = Column(Integer, unique=True, nullable=False, primary_key=True, autoincrement=True)
hash = Column(VARCHAR(10), nullable=False, unique=True)

# Exchange details
status = Column(Choice(ExchangeStatus), default='pending')

user: Mapped['User'] = relationship(back_populates="exchanges", uselist=False)
user_fk: Mapped[int] = mapped_column(ForeignKey('users.user_id'))

created_at = Column(DateTime(timezone=True), server_default=func.now())
updated_at = Column(DateTime(timezone=True), onupdate=func.now())

def __str__(self):
return self.username

4 ответов

16 просмотров

user = User(…) exchange = Exchange(…) user.exchanges.append(exchange)

Назарбаев- Автор вопроса
Artem
user = User(…) exchange = Exchange(…) user.exchang...

Сделал по своему, вроде отрабатывает. Но есть сомнения что не практично, что вы думаете на этот счёт? user_result = await session.execute( select(User).where(User.user_id == user_id) ) user: User = user_result.scalar() exchange = Exchange( hash=exchange_hash, user=user ) session.add(exchange) await session.merge(exchange) await session.commit()

```python print('Hello World') ``` print('Hello World')

Похожие вопросы

Обсуждают сегодня

А кто-то пробовал, уезжая из Эстонии получить э-рез и продолжить вести предпринимательскую деятельность внутри Эстонии, используя свой OÜ?
Lalalashechki Lalala
62
@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
@samkazemian - couple questions: Update on frxBTC? - This would do well with the current influx of institutional investment entering the space Update on future veFXS streams...
Costi
16
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Does anyone here have a connection Mullvad? it would be nice to know what it would take to have them accept BCH 0-conf.
tl121x
16
Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
Can an XMR transaction be tracked from its sender to its receiver by performing blockchain analysis, no matter how many addresses are used?
Trkz342
16
Кто-нибудь знает почему SPM клонирует репо целиком? Некоторые репы просто огромные, как та же swift-syntax которая нужна для использования макросов. Сначала подумал, что это...
iMike
6
I arrived here after a Chico Crypto show highlighted the project & the Team - the fact that the Team had a long history of successfully working with household names gave me e...
Banter is Bullish
5
Карта сайта