在我的开发应用程序中,我使用了 Haystack 的组合,以 Whoosh 作为后端进行搜索。
但是,当我部署到 Heroku 时,我的搜索不再起作用,即使在运行python manage.py update_index
.
经过一番研究,我发现这是因为 Heroku 的只读文件系统。
是否有任何免费的解决方案可以在 Heroku 上解决此问题,以便我可以进行搜索?我看过的插件每月大约 20 美元,如果可能的话,我更愿意开始使用免费的解决方案。
在我的开发应用程序中,我使用了 Haystack 的组合,以 Whoosh 作为后端进行搜索。
但是,当我部署到 Heroku 时,我的搜索不再起作用,即使在运行python manage.py update_index
.
经过一番研究,我发现这是因为 Heroku 的只读文件系统。
是否有任何免费的解决方案可以在 Heroku 上解决此问题,以便我可以进行搜索?我看过的插件每月大约 20 美元,如果可能的话,我更愿意开始使用免费的解决方案。
如果没有单独的搜索服务器,这样做是不切实际的。Heroku dyno 上的存储不是只读的,但它们对于 dyno 来说是短暂的和独立的,任何生产应用程序都至少有两个 dyno。您可能可以设置一些东西在测功机上运行,但它肯定是复杂和脆弱的,而第三方服务是交钥匙的。大多数第三方搜索附加组件随着使用量的增加而扩展,其中许多在最便宜的水平上是免费的,如果它们都不符合要求,那么您可以随时使用非 Heroku 搜索服务,其中有很多。
请注意,dyno 文件系统是可写的。你能发布你得到的错误吗?
您可能想再看看 Heroku 附加组件。有几个 Elastic Search 附加组件处于免费测试版或有免费计划。Haystack 支持弹性搜索: