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