如何为类似于django Model / Field的动态字段指定类型?

时间:2018-08-13 21:42:43

标签: python django pycharm

例如:

# field base class
class F:
    pass


# represent integer
class AF(F):
    pass


# represent string
class BF(F):
    pass


class M:
    a = AF()
    b = BF()

    def __init__(self):
        pass  # generate dynamic attrs based on specified static attrs


m = M()
# m.a should have inferred type integer

也许这只是具有所有这些类型提示的IDE(PyCharm)功能,并且此功能很难绑定到Django的Model类吗?

1 个答案:

答案 0 :(得分:0)

Django的Model类具有显式检查字段类型的字段以及将这些类型添加到DB的数据库迁移。如果要在python中使用静态类型,请考虑使用MyPy来注释函数和变量。