0

[]Django 1.4.2、Haystack 2.0beta、および ElasticSearch 0.19 を使用して、MultiValueFieldの空のセットを持つ結果を照会するにはどうすればよいですか?

4

2 に答える 2

1

という名前の整数フィールドを作成し、num_<field>それに対してクエリを実行します。

この例では、'emails' が MultiValueField であるため、'num_emails' を作成します。

class PersonIndex(indexes.SearchIndex, indexes.Indexable):
    text = indexes.CharField(document=True, use_template=True)
    name = indexes.CharField(model_attr='name')
    emails = indexes.MultiValueField(null=True)
    num_emails = indexes.IntegerField()

    def prepare_num_emails(self, object):
        return len(object.emails)

今、あなたの検索であなたが使うことができます

SearchQuerySet().filter(num_emails=0)
于 2013-05-12T17:35:10.250 に答える