Отношения OneToOne и django-autocomplete-light

У меня есть некоторые проблемы с django-autocomplete-light, которые я не могу решить самостоятельно.

модели.py

from django.contrib.auth.models import User
class UserProfile(models.Model):    
   user = models.OneToOneField(User, related_name="user_profile")
   ...

autocomplete_light_registry.py

class UserProfileAutocomplete(autocomplete_light.AutocompleteModelBase):
    model = UserProfile
    search_fields = ['username']
    attrs = {
        'data-autocomplete-minimum-characters': 1,
    }

autocomplete_light.register(UserProfileAutocomplete)

Я пробовал это, но это вызывает ошибку: FieldError, Не удается преобразовать ключевое слово u'username' в поле.

Я уже пробовал «пользователь», но он вызывает: TypeError, Related Field получил неверный поиск: icontains

Что я должен делать?

Большое спасибо.


person Zoli    schedule 20.11.2015    source источник
comment
Есть ли дополнительная информация после icontains ? Ошибки поля = не удается найти поле, на которое вы пытаетесь сослаться, ошибки типа = недопустимое соответствие формата (попробуйте изучить тип данных, который вы используете в БД, как вы его инициализировали в своих моделях.py, несоответствие и т. д. .)   -  person jdero    schedule 20.11.2015
comment
@MoeFar Пожалуйста, прекратите вносить разовые изменения тегов в сообщения. Редактирование отдельных тегов, особенно если они не улучшают форматирование или содержание поста, здесь сильно не одобряются. Чтобы утвердить ваши правки, требуется три человека, и эти правки настолько незначительны, что буквально тратят наше время.   -  person Zizouz212    schedule 22.11.2015


Ответы (1)


вам нужна модель пользователя username. так что вам нужно user__username

class UserProfileAutocomplete(autocomplete_light.AutocompleteModelBase):
    model = UserProfile
    search_fields = ['user__username'] # <-- user__username instead username
    attrs = {
       'data-autocomplete-minimum-characters': 1,
    }

    autocomplete_light.register(UserProfileAutocomplete)
person doniyor    schedule 20.11.2015