SQLAlchemy: избегание повторения в определении класса декларативного стиля
Я использую SQLAlchemy, и многие классы в моей объектной модели имеют одинаковые два атрибута: id и (целое число и первичный ключ) и имя (строка). Я стараюсь не объявлять их в каждом классе так:
class C1(declarative_base()):
id = Column(Integer, primary_key = True)
name = Column(String)
#...
class C2(declarative_base()):
id = Column(Integer, primary_key = True)
name = Column(String)
#...
Какой хороший способ сделать это? Я пытался использовать метаклассы, но это еще не сработало.