Python SQLModel наследование возвращает атрибутPython

Программы на Python
Ответить
Anonymous
 Python SQLModel наследование возвращает атрибут

Сообщение Anonymous »

Я объявляю классы sqlmodel, пытаясь инкировать логику DB в пользователе класса и другую вычислительную логику в классе user2 .
пользователь класса - ребенок, если класс BaseModel < /code>, чтобы я мог объявить все общие атрибуты и функции и повторно их использовать. < /p>

Код: Выделить всё

from typing import Optional, Dict
from sqlmodel import SQLModel, Field, MetaData
from datetime import date

class BaseModel(SQLModel, table=False):
metadata = MetaData(schema=db.schema)

class User(BaseModel, table=True):
id: int = Field(default=None, primary_key=True)
user_name: str = Field(max_length=50)
mobile: str = Field(max_length=12, nullable=True, index=True, unique=True)
email: str = Field(max_length=50, nullable=True, index=True, unique=True)
password: Optional[str]
auth_type: str = Field(max_length=50, nullable=False)
user_sex: str = Field(max_length=10)
user_birth_date: Optional[date]
active: bool = Field(default=False)

class User2(User, table=False):
pass
И при инициализации объекта User2() я получаю ошибку AttributeError: у объекта «NoneType» нет установленного атрибута.
Инициализация объекта User() прошла успешно.
Я уже пытался вызвать super().__init__(*args, **kwargs) в классе BaseModel, но я получаю то же самое ошибка, но уже в этом объекте.
Как я могу наследовать от дочернего класса SQLModel? Или есть какой-то другой способ наследования от класса БД?

Подробнее здесь: https://stackoverflow.com/questions/793 ... ibuteerror
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»