from typing import Dict, Optional, Union import databases import ormar import sqlalchemy DATABASE_URL = "sqlite:///test.db" ormar_base_config = ormar.OrmarConfig( database=databases.Database(DATABASE_URL), metadata=sqlalchemy.MetaData() ) class Department(ormar.Model): ormar_config = ormar_base_config.copy() id: int = ormar.Integer(primary_key=True) name: str = ormar.String(max_length=100) class Course(ormar.Model): ormar_config = ormar_base_config.copy() id: int = ormar.Integer(primary_key=True) name: str = ormar.String(max_length=100) department: Optional[Union[Department, Dict]] = ormar.ForeignKey(Department)