如何在 django 中进行复杂的搜索?使用视图还是模型?
Posted
技术标签:
【中文标题】如何在 django 中进行复杂的搜索?使用视图还是模型?【英文标题】:How to make complex searches in django ? Use views or models? 【发布时间】:2021-09-02 01:13:42 【问题描述】:我想在我的 Django 应用程序上创建一个职位搜索页面。
我现在想知道如何开发这个的最佳实践是什么。
在我的视图中进行所有过滤会更好吗?还是应该在模型中进行所有过滤?
【问题讨论】:
【参考方案1】:在这种过滤方面没有真正的最佳实践,如果有任何性能差异,那将是非常小的。
这将归结为偏好。如果在整个项目中多次调用此方法,则可以在模型中创建方法,除了这种情况,我个人认为没有理由说明如果它是定制的一次性查询,为什么不能在视图中进行过滤.
希望这可以为您澄清事情。
【讨论】:
感谢@stackdon,澄清了这一点。难道我们不能也创建一个包含查询代码的 utils.py 文件并在多个视图中重用它吗? 你可以这样做,但是在模型中为它创建一个方法会更好,因为无论如何你都在调用查询。肯定会使代码更简洁。 如果您要重用大量代码,更简洁的代码是使用utils.py
文件
breadcrumbscollector.tech/stop-naming-your-python-modules-utils以上是关于如何在 django 中进行复杂的搜索?使用视图还是模型?的主要内容,如果未能解决你的问题,请参考以下文章