R. *_*eff 8 autocomplete ruby-on-rails ruby-on-rails-3
所以我在Autailsmplete for Rails 3上找到了一些很棒的信息,它看起来非常简单易用.但我有一个不适合的用例,我需要一些建议.
我想让用户能够通过简单的表单将产品和服务添加到发票中.我希望他们能够输入Item字段并将其从Product.name和Service.name自动完成作为单个集合.
我正在考虑尝试编写覆盖所有三个的父模型,但我仍然认为这不能解决我的问题,因为我无法从我理解的自动完成定义中使用函数.
关于如何尝试实现这一目标的任何建议?即使使用简单的搜索示例,它们似乎仅限于单个模型.
如果您不反对将 Redis 引入其中,请查看https://github.com/seatgeek/soulmate ——来自自述文件:
Soulmate 是一个帮助解决开发快速自动完成功能的常见问题的工具。它使用 Redis 的排序集来构建部分完成的单词和相应的顶部匹配项的索引,并提供一个简单的 sinatra 应用程序来查询它们。Soulmate 完成你的句子。
Soulmate 的设计简单而快速,并提供以下功能:
项目是一个简单的 JSON 对象,如下所示:
{
"id": 3,
"term": "Citi Field",
"score": 81,
"data": {
"url": "/citi-field-tickets/",
"subtitle": "Flushing, NY"
}
}
Run Code Online (Sandbox Code Playgroud)
其中id是唯一标识符(在特定类型内),term是您希望提供补全的短语,score是用户指定的排名指标(Redis 会按字典顺序对具有相同分数的项目进行排序),data是元数据的可选容器您希望在该项目匹配时返回(在 SeatGeek,我们包含该项目的 url 以及当我们在自动完成下拉列表中呈现该项目时的副标题)。
在SeatGeek观看 Soulmate 的实际应用。
如果不出意外,也许它会给您一些关于如何以有意义的方式构建数据的想法。
我没有写任何东西,也没有与灵魂伴侣有任何关系。这只是我在尝试解决类似问题时发现的一个库。希望能帮助到你!
| 归档时间: |
|
| 查看次数: |
1897 次 |
| 最近记录: |