2

これが両方のアプリと関係がない場合は申し訳ありません。次のスニペットは、「スライスが取得されると、クエリをフィルター処理できません」というメッセージをスローします。

models.py

class Cartao(models.Model):
    ...
    user = models.ForeignKey(settings.AUTH_USER_MODEL)
    tags = TaggableManager()

autocomplete_light_registry.py

import autocomplete_light
from taggit.models import Tag

class TagAutocomplete(autocomplete_light.AutocompleteModelBase):
    autocomplete_js_attributes={'placeholder': 'Ex: pessoal, serviços',}

    def choices_for_request(self):
        choices = super(TagAutocomplete, self).choices_for_request()
        return choices.filter(cartao__user=self.request.user)

autocomplete_light.register(Tag, TagAutocomplete)
4

1 に答える 1

4

わかりました、次のようにしてみてください:

def choices_for_request(self):
    self.choices = self.choices.filter(cartao__user=self.request.user)
    return super(TagAutocomplete, self).choices_for_request()

申し訳ありませんが、ドキュメントに誤りがあります... arggggg !

ご意見ありがとうございます !

于 2013-10-11T14:58:59.197 に答える