我正在使用Laravel应用程序搜索案例研究。基本上,我正在尝试找出对搜索结果进行排序的最佳方法。用户可以通过关键字,学习结果或课程来搜索案例研究。返回结果后,我想为用户提供一种对结果进行排序的方法。
例如,假设我搜索一个关键字,然后返回10个案例研究作为结果。每个案例研究可能都有许多适用于该案例研究的学习成果和课程。我希望用户可以选择一种过滤器,例如“仅向我展示适用于课程x和y的案例研究”。这似乎是用jQuery轻松完成的事情。
现在,理想情况下,我希望只提供一次结果,并在前端进行这种类型的过滤,但是我对如何在DOM中表示此数据感到困惑。我不知何故需要一种从结果中选择案例研究并从中获取相关学习成果和课程的方法。我认为数据属性不可能做到这一点,因为它们只能拥有一种价值,而案例研究可以具有许多成果和许多课程。
另外,我可以给每个研究一个数据ID,并将其作为数据库中案例研究的ID。当用户选择以某种方式对结果进行排序时,我可以对案例研究的ID进行AJAX,在数据库中查询它们并在Laravel后端对其进行过滤。但是,这似乎是一种非常低效的方法,因为现在我两次进行相同的案例研究,并运行不必要的数据库查询。
如果这似乎是一个模糊的解释,我深表歉意,任何指针将不胜感激。
最佳答案