【发布时间】:2012-02-19 12:45:55
【问题描述】:
我们需要为用户提供搜索选项,以根据特定字段值查找内容。
我们正在为客户开发培训课程模块,但标准搜索会在任何索引字段中查找文本。我们希望允许用户根据针对特定字段(即课程类型、地点、价格、日期)的搜索来查找课程。
我们已扩展搜索以检查特定字段,但无法弄清楚如何获取搜索表单作为 GET 传递的 URL 参数。
Orchard 将 URL 参数放在哪里?
另外,我们是否遗漏了什么,Orchard 是否有一种我们尚未意识到的方式已经支持这一点?
【问题讨论】:
-
你的意思是你想要像
Search for location=xxx这样的搜索??因为当您制作字段时,您可以选择它们是否可索引。只有我不知道您将如何指定在特定字段中进行搜索。 -
嗨@gideon,没错,我们希望能够将各个字段分开,因此搜索 URL 可能是 search?location=Ohio&Type=Cooking 但我们没有想要在课程描述中提及俄亥俄州的任何烹饪课程(例如“我们在俄亥俄州也有一所学校”),我们想要那些专门将其位置设置为俄亥俄州的课程.
-
也许您可以查看orchardgallery.codeplex.com 该网站确实有一个类似于您正在寻找的类别搜索 (gallery.orchardproject.net/List/Modules)
-
感谢@gideon,我会看看那个模块,仅供参考,我们在我们正在使用的搜索模块中找到了要更新的代码。 SearchControl.cs 文件中有一个 ActionResult 方法,我们在其中添加了额外的预期参数。 MVC 自动将 URL 参数映射到这些新参数(只要我们使用相同的名称),因此这至少意味着我们可以将这些传递给我们修改后的搜索函数。现在我们要做的就是对他们做点什么:-)
标签: search indexing orchardcms