PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

SQLAlchemy с клас данни по подразбиране не попълва postgres база данни

От '' и 0 са съответно върнатите по подразбиране стойности на str() и int() функции, можете да използвате следния код, за да вмъкнете тези настройки по подразбиране:

@dataclass
class Person:
    id: int = None
    name: str = field(default_factory=str)
    age: int = field(default_factory=int)
    hobbies: List[str] = field(default_factory=list)
    birthday: datetime = field(default_factory=datetime)

За съжаление, по някаква причина използвам default параметър на field() функцията не работи както бихме могли да очакваме (може да е грешка на dataclasses backport или недоразумение...). Но все още можете да използвате default_factory за да посочите стойности, различни от '' и 0 използвайки lambda :

@dataclass
class Person:
    id: int = None
    name: str = field(default_factory=lambda: 'john doe')
    age: int = field(default_factory=lambda: 77)
    hobbies: List[str] = field(default_factory=list)
    birthday: datetime = field(default_factory=datetime)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. org.hibernate.type.TextType и Oracle

  2. Sqlalchemy.exc.OperationalError:(psycopg2.OperationalError)

  3. Импортиране на .csv с колона за време (dd.mm.yyyy hh.mm.ss) с помощта на psql \copy

  4. Използвайки Docker, какво задейства ПАНИКА:не може да се намери валиден запис на контролна точка

  5. Сложна заявка на Postgres