AJAXオートコンプリートの実装は非常に簡単です。しかし、SOでこのようなスマートタグの提案をどのように処理するのか疑問に思います。
オートコンプリートと提案の違いを明確にするには:
- オートコンプリート:foo [foobar、foobaz]
- 提案:foo [barfoo、foobar、foobaz]、またはさらに良いことに、「もしかして」機能:[barfoo、foobar、foobaz、fobar、fobaz]
タグで全文検索が必要だと思います(単語だけでなく、すべての文字が索引付けされています)。限られた数のタグ(クライアント側でも)に対して正規表現やその他のパターンを使用しても問題はありません。
しかし、この機能を多数のタグに実装するにはどうすればよいでしょうか。
SOのタグがダッシュで区切られている(URL以外の)特別な理由はありますか?タグ内のUnicode文字はどうですか?
次の列を持つテーブルにタグを格納します:id、tagname。私のSQLクエリは、id、tagname、countのフィールドを持つオブジェクトを返します
(私はデフォルトのdbドライバーとしてDoctrine ORMとpgsqlを使用しています。)