SQLAlchemy №4. Модели и объекты в ORM. Работа с метаданными (Часть 2).

Поделиться
HTML-код
  • Опубликовано: 15 апр 2023
  • Первый русскоязычный видеокурс о SQLAlchemy! Данный видеокурс основан на книге "SQLAlchemy от чайника к алхимику", которая представляет из себя перевод официального туториала от разработчиков алхимии. Данная книга распространяется бесплатно и общедоступно в двух вариантах:
    PDF-версия: t.me/massonnn_yt/133
    Веб-версия: massonnn.notion.site/SQLAlche...
    Если вы хотите, чтобы я сделал ревью вашего проекта, то напишите об этом в моем дискорде:
    / discord
    Мой телеграмм канал:
    t.me/massonnn_yt
    --------------------
    Данное видео было сделано бесплатно, не содержит рекламы и не пытается что-то продавать. Если вам кто-то что-то предлагал, то имейте ввиду - это мошенники.
    Вы можете поддержать автора, если он вам чем-то помог:
    Если вы из России:
    410011676049152 (yoomoney)
    2200700702094680 (Тинькофф)
    Если вы из Украины:
    5457082270647394 (ПриватБанк)
    Криптовалюты:
    ltc1qm6lx5e8q8ff7hs5ne2yxskhs2jhdl6ludq4ud8 (LTC / Litecoin)
    bc1qfz7399jdqrxkpmmxyetk0frdskwv23k6p4yhdu (BTC)
    0x95643B2702d1C4b965c1451C3f9bAAE7FF35115D (ETH)
    TAc1WsbgAeB3UY4LrsfoshkTNHzTF1zqj5 (Tether USD-T)
  • НаукаНаука

Комментарии • 24

  • @user-ll5sp2zg1n
    @user-ll5sp2zg1n 11 месяцев назад +3

    Спасибо тебе за контент!

  • @hunterxvov4ik
    @hunterxvov4ik Год назад +1

    ну ты хорош бро, лайк

  • @ArtemKovalchukl
    @ArtemKovalchukl Год назад +4

    сижу на последней версии двойки и Column() спокойно работает ничего не запрещали

  • @sergeyyolovoi2742
    @sergeyyolovoi2742 8 месяцев назад

    Всё супер, спасибо!

    • @massonnn
      @massonnn  7 месяцев назад

      Спасибо за высокую оценку моих стараний! Надеюсь, новые видео станут не менее полезными для вас. А чтобы их не пропустить можно оформить подписку на канал)

  • @shoxruxtolipov7101
    @shoxruxtolipov7101 5 месяцев назад +2

    Дополнение: тайп хинты уже есть

  • @user-vz9qh2mo5s
    @user-vz9qh2mo5s 3 месяца назад

    Когда в дочерних классах UserModel убираешь атрибут __tablename__, но при этом в родительском классе прописал метод __tablename__, возникает ошибка AttributeError, с чем это может быть связанно?
    upd: Попробовал не через @classmethod, а брать имя экземпляра класса, передавая self аргументом и заработало

  • @xjpfxei
    @xjpfxei 4 месяца назад

    Почему-то в инете все рекомендуют использовать sessionmaker
    s = sessionmaker(engine)
    with s() as session:
    ...

    • @massonnn
      @massonnn  4 месяца назад

      Sessionmaker вспомогательная фабрика, которая позволяет делать ровным счётом тоже самое, только без постоянного указания параметров сессии

  • @G_Den
    @G_Den 10 месяцев назад

    А есть же на orm класс DeclarativeBase, если наследовать абстракт от него, то потороха подтягиваются, а через декор иде не понимает что там внутри. Типа работает по итогу одинаково, но так как то более явно получается что ли. А вообще круто классно молодец спасибо лайк подписка все дела)

    • @massonnn
      @massonnn  10 месяцев назад

      Я показывал все способы, что касается наследования от DeclarativeBase, этот метод удобен для подсказок, но неудобен, если требуется настройка метаданных.

  • @uvencosuper3471
    @uvencosuper3471 2 месяца назад

    А я могу быть уверен в том, что маппед колумн сам отличит BigInteger от Integer, если я напишу user_id: Mapped[int] = mapped_column(unique=True, nullable=False) или как то иначе надо записать?
    UPD: Сорян, не досмотрел =) Если в особых случаях всё равно надо писать BigInteger, то mapped_column - излишнее добавление ИМХО, да еще и с вырвиглазным синтаксисом. Я когда такое впервые увидел в чужих исходниках, вообще сначала подумал, что это не питон

    • @massonnn
      @massonnn  2 месяца назад

      Этот функционал еще не до конца проработан, но я вас уверяю: писать один раз тип данных вместо двух всë еще лучше.

  • @sjiwul
    @sjiwul 11 месяцев назад

    ничего не могу найти по поводу __allow_unmapped__ вообще такой атрибут есть?

    • @massonnn
      @massonnn  11 месяцев назад

      github.com/MassonNN/masson-aiogram-template/blob/e0e36a6ba2279f4d7b70071fd2fda3860be52b12/src/db/models/base.py#L31

  • @user-lz4we9pk8b
    @user-lz4we9pk8b 9 месяцев назад

    Привет. Как ты сделал ctrl + А в 14:45 ?

    • @massonnn
      @massonnn  9 месяцев назад +1

      Заменить в файлах Ctrl(CMD) + Shift + R

  • @cinnabonn16
    @cinnabonn16 Год назад +4

    ты американец?

  • @power3llc437
    @power3llc437 9 месяцев назад +3

    Блин, сначала одно рассказал, потом второе потом 3ее. Будь последовательным, не создавай шумиху в голове плиз.

    • @massonnn
      @massonnn  7 месяцев назад

      Рассказ ведётся в соответствии с переводом туториала, если что-то осталось непонятным, то вы можете прочитать его самостоятельно по ссылке в описании

    • @user-vc9ij4su4e
      @user-vc9ij4su4e 3 месяца назад

      @@massonnn У алхимии самый шизанутый ман во всея айти. В этом случае перевод официального тутора не что-то хорошее, надо лучше быть

    • @sasi911
      @sasi911 3 месяца назад

      @@user-vc9ij4su4e ты еще aiogram доку не читал