我想制作可重复使用的应用程序,允许集成商进行自定义。
一个例子是,如果我制作一个简报存储电子邮件地址的简报注册应用程序,但积分器后来想要添加其他字段,比如说一个名字。我需要做些什么才能轻松实现这一目标?
我走下了交换模型的道路,就像Django的auth系统一样,但这并没有奏效。然后我在Meta类and a package that does this中找到了swappable属性,但两者都不适合外部使用。
我认为集成商要做的唯一方法就是允许他们通过将自定义表单传递到URL中的视图来提供自定义表单。
url('^someurl/$', MyView.as_view(form_class=SomeForm), name="myurl")
然后有一个辅助模型,内部通讯模型的外键,但这意味着需要连接的辅助表。
另一种选择是尝试抽象模型,但我不确定会产生什么样的影响。
那么Django / Pythonic解决这个问题的方法是什么?