我编写了一个django应用程序,它提供了一个OpenStreetMap,并允许用户通过添加和删除placemark进行交互。这些位置标记具有某些属性。属性保存在placemark模型中。
对于另一个项目,我想重用应用程序,但具有不同的placemark属性。我认为最简单的方法是改变应用程序中的placemark模型,并改变模型以适应我的需求。
有更通用的方法吗?我可以使用placemark类,它有一个Meta
类和abstract=True
。然后,我可以通过添加新字段来扩展继承的类。但是我仍然需要直接使用应用程序。
我更喜欢传递一个类与我的placemark信息到地图应用程序,然后"指向"的placemark信息类时,需要的信息。
是否有一个标准的django/python的方式来做到这一点?有没有更好的方法?
类似的事情也发生在Django的User模型中。这里是一个设置,实际使用哪个模型的用户,它被称为AUTH_USER_MODEL
。我建议您使用MAP_PLACEMARK_MODEL
设置,将位置信息类传递给地图应用程序。