我正在构建一个使用Wagtail的新webapp。这是一个架构问题。
将有标准关于,服务条款和博客页面。所有这些都非常适合Wagtail范例。网站内容的其余部分是关于特定类型的企业的基于位置的信息。想想FourSquare类型的应用。这些页面的数据将非常结构化,通过面向用户的网页和移动应用程序进行更新,并且是JavaScript重量级。
对于常规的Wagtail页面,随着时间的推移可能会有数百个。对于位置页面类型,(希望)将有数万个页面嵌套到最多四个级别。
从网站范围的功能角度来看,我希望利用像站点地图和弹性搜索这样的Wagtail功能。
我的问题是,我应该使用Wagtail Page类来处理基于位置的页面吗?
优点:
缺点:
如果我采用非扭曲路线,是否可以在搜索索引中添加非扭曲模型?
在这个选择中我还应该考虑其他问题吗?
答案 0 :(得分:1)
Any Django model can be indexed and searched继承自index.Indexed
并将search_fields
定义到模型上。
至于是否使用页面,一如既往取决于许多事情。但是,看起来保持您的位置模型是有意义的,而不是将其作为页面并在管理员中公开(如果您需要一些已存在的扩展,则为Django Admin,否则为Wagtail's modeladmin) 。然后,您将创建LocationIndexPage
来实现RoutablePageMixin以动态提供LocationPage
。该页面不会存在于管理树中,但无论如何都可以访问。