问题标签 [tagging]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
445 浏览

mysql - 按多个标签过滤帖子以返回具有所有这些标签的帖子,性能良好

StackOverflow 允许您按标签搜索帖子,并允许您按标签的交集进行过滤,例如ruby x mysql x tags. 但通常使用标记上的多重连接从 MySQL 检索此类列表效率低下。实现按多个标签查询过滤的更高效的方法是什么?

有没有很好的 NoSQL 方法来解决这个问题?

0 投票
2 回答
538 浏览

php - 设计可以标记多个数据库表的标记系统

我希望允许用户标记项目,以便他们可以使用标签搜索它们。干净地实现这一目标的最佳方法是什么?到目前为止,我提出的解决方案只涉及向我当前的数据库系统添加两个额外的表。

这是一个很好的方法吗?这种方法的一个好处是它应该可以很好地扩展,并且它还允许我在未来通过简单地向 TagLink 表中添加一个列来添加更多可跟踪的产品。如果我计划跟踪 10 张桌子,这显然不是一个好主意,但对于最多 3-4 张桌子,它应该证明可以很好地工作,不是吗?

0 投票
1 回答
211 浏览

jquery - 标记搜索以前的标签,同时允许接受新标签

我正在寻找一个 jQuery 插件,它的工作方式与Last.fm上的标记工作方式相同。

在 Last.fm 上添加标签,使用自动建议来查找以前的标签并推荐它们。如果您选择其中一个标签,它会像Facebook一样更新 CSS,使其周围有一个带有 X 的气泡。

标签用逗号分隔:,

对于输入的新标签且未在自动建议中找到,如果您输入“adsadsasd”,然后输入逗号,则该文本将在 Last.fm 上以与上述相同的样式换行。

任何人都知道任何可以在 jQuery 中执行此操作的插件吗?

0 投票
1 回答
499 浏览

c# - Winforms 控件的工作方式类似于 ajax 标记完成

我想创建一个 winforms 应用程序,您可以在其中将标签分配给实体。ofc 我希望客户大量重复使用现有标签。这就是为什么我想在他们输入时向他们显示标签列表(类似于 VS 中的智能感知和甚至在 stackoverflow 中的标签下拉列表;))

  • 您是否有任何提供此功能的控件?
  • 我可以为此重用 ComboBox 吗?(在这里我需要以编程方式将其放下 - 如何?)

我想让 taglist 获得输入焦点但不丢失主窗体焦点,我希望它位于所有窗口的顶部,甚至超出主窗体区域(如 vs 中的智能感知)

谢谢!

0 投票
2 回答
7592 浏览

c# - 如何实现标签搜索?用lucene?

我没用过lucene。上次我问(几个月前,也许一年)人们建议使用 lucene。如果我不应该使用 lucene 我应该使用什么?例如说有这样标记的项目

  1. 苹果 胡萝卜
  2. 苹果
  3. 萝卜
  4. 苹果香蕉

如果用户搜索苹果,我不在乎 1,2 和 4 是否有任何偏好。但是我看到很多论坛都这样做,我讨厌的是,当用户搜索苹果胡萝卜 2 和 3 时结果很高,而 1 甚至很难找到虽然它更符合我的搜索。

我也希望能够搜索胡萝卜-苹果,这只会让我得到 3。我不确定如果我搜索胡萝卜香蕉会发生什么,但无论如何只要标记为 2 和 3 结果的更多项目的排名低于 1 时我搜索苹果胡萝卜我会很高兴。

lucene可以做到这一点吗?我从哪里开始?我尝试查找它,当我这样做时,我会看到很多课程,并且会看到有关文档,网页的教程,但是当我喜欢标记某些东西时,没有人清楚该做什么。如果不是 lucene,我应该用什么来标记?

0 投票
1 回答
858 浏览

django - Django:如何在不接触应用程序源代码的情况下向第三方应用程序动态添加标签字段

场景:具有许多第三方应用程序的大型项目。想要在不修改应用源的情况下为这些应用添加标签。

我的第一个想法是首先在 settings.py 中指定一个模型列表(例如['appname.modelname',],并在每个模型上调用 django-tagging 的register函数。注册函数将一个 TagField 和一个自定义管理器添加到指定的模型。这种方法的问题是该函数需要在生成数据库模式之前运行。

我尝试register直接在 中运行该函数settings.py,但我只需django.db.models.get_model要从一个字符串中获取实际的模型引用,而且我似乎无法从中导入它settings.py——无论我尝试什么,我都会收到 ImportError。tagging.register不过函数导入OK 。

所以我改变了策略,在一个原本空的应用程序中编写了一个自定义管理命令。问题是唯一连接到syncdb的信号post_syncdb对我来说是无用的,因为它在生成数据库模式后触发。

目前我能想到的唯一其他方法是生成并运行类似“南”的数据库模式迁移。这似乎更像是一个黑客而不是一个解决方案。

这似乎应该是一个非常普遍的需求,但我一直无法找到一个干净的解决方案。

所以我的问题是:是否可以在生成模式之前向模型动态添加字段,但更具体地说,是否可以在不编辑其源代码的情况下向第三方模型添加标记。

澄清一下,我知道可以在模型上没有 TagField 的情况下创建和存储标签,但这种方法存在一个主要缺陷,即难以同时创建和标记新模型。

0 投票
2 回答
616 浏览

php - 支持Tags系统的sql方案是什么?

我用 php 编写了一个小型论坛软件,人们在其中发布线程,我想支持标签。

我应该为此创建多少个 SQL 表?简要介绍一下标签系统将如何工作?

谢谢

0 投票
1 回答
504 浏览

ruby-on-rails - 使用 is_taggable 标记 rails

提供了一个关于如何使用is_taggable向模型添加标签的示例,它工作得非常好(在 5 分钟内工作)

现在,我还需要相反的,显示所有标记有某个单词的记录。

就像是:

ModelWithTag.find_by_tags "foo"

或者

find_all_tagged_with "foo"

这可能与 is_taggable 吗?

0 投票
2 回答
636 浏览

java - GAE-J中的标注系统设计

我需要一个简单的 GAE-J 标记系统。

正如我所看到的,被标记的实体应该具有一组键,这些键引用与其关联的标签。

标签实体应该只包含标签字符串本身,以及指向与标签关联的实体的键集合。

当实体的标签列表发生变化时,如果标签未知,系统将创建一个新标签,然后将实体的键附加到该标签的键集合中。如果标签已经存在,那么实体的键被简单地附加到标签的键集合中。

这对我来说似乎相对直截了当且没有争议,但我想对这个设计提供一些反馈,只是为了确定。

0 投票
2 回答
178 浏览

python - 设计一个标签表,告诉它使用了多少次

我正在尝试使用这样的模型设计一个标记系统:

标签和被标记的内容之间是多对多的关系。

每次我在关联表中插入一条记录时, Tag.used都会增加一,如果删除,则减少一。

维护Tag.used是因为我想加快回答“这个标签被使用了多少次?”的问题。

但是,这似乎明显减慢了插入速度。

请告诉我如何改进这个设计。

提前致谢。

http://www.pui.ch/phred/archives/2005/06/tagsystems-performance-tests.html