Я работаю над RPG с использованием django и рассматриваю различные варианты реализации части системы навыков.
Скажем, у меня есть базовый класс навыков, например, что-то вроде:
class Skill (models.Model):
name = models.CharField()
cost = models.PositiveIntegerField()
blah blah blah
Каковы были бы некоторые подходы к реализации конкретных навыков? Первый вариант, который приходит на ум:
1) Каждый навык расширяет класс навыка и
переопределяет определенные функции:
Не уверен, как это будет работать в Django. Похоже, что наличие таблицы БД для каждого навыка было бы излишним. Может ли дочерний класс быть абстрактным, пока в классе Skill есть запись? Не правильно звучит. Как насчет использования прокси-класса?
Какие есть еще варианты? Я хотел бы избежать использования сценариев для подхода чистого Джанго.