2012-02-14 20 views
3

私は自分のサイトで最も使用頻度の高いタグのリストを取得しようとしています。 django taggitのAPI docsはmost_common()メソッドを参照していますが、動作させることができません。ドキュメント:most_common with django-taggit

"表示される回数で注釈が付けられたすべてのタグのうち、QuerySetが返され、各タグのnum_times属性として利用可能です。"

しかし、実際の例は示していません。

Item.objects.all.tags.most_common() 

私はこれのバリエーションを試してみたが、注文したように見えることはできません:これはあなたのような何かを行うことができる必要があります意味し、「アイテム」モデルは、作業の「タグ」フィールドを持っていると仮定すると、最も使用頻度の高いタグのリストここで期待される魔法の呪文は何ですか?

答えて

6

私はそれがobjects.allなしであるべきと考えている:

tags = Item.tags.most_common() 
+0

感謝Secator - トリックをしました。 – shacker

+1

また、簡単な説明者が気にならない場合は、APIのドキュメントからどのように理解したのか不思議です。 – shacker

+1

'tags'はTaggableManagerオブジェクトです。これは[Manager](https://docs.djangoproject.com/en/dev/topics/db/managers/)のサブクラスです。これは 'objects'と同じように動作しますので、典型的な使い方は' ModelClass.manager_instance.query_modification_method() ' –