db_index и unique = True в отношении OneToOne

Я расширяю модель пользователя django.

from django.contrib.auth.models import User

class UserProfile(models.Model):
    user = models.OneToOneField(User, _(u"User"))

поэтому можно ли использовать db_index = True и unique = True с полем пользователя? а затем мне нужно выполнить поиск по имени пользователя. Я думал о Сфинксе. Любые мысли по этому поводу? возможно, некоторые ссылки с хорошими учебниками? ТИА

1
nl ja de
вам не нужно ставить уникальный, потому что его OnetoOneField
добавлено автор catherine, источник

1 ответы

Поиск по имени пользователя будет следующим:

UserProfile.objects.filter(user__username="dave")

Кроме того, я не уверен, что ваш второй параметр должен делать; декларация должна выглядеть так:

class UserProfile(models.Model):
    user = models.OneToOneField(User)

Все дополнительные аргументы в models.OneToOneField должны быть аргументами с ключевыми словами.

Как указывал Кэти, models.OneToOneField подразумевает unique = True . IIRC, это означает, что Django автоматически создаст индекс для этого поля. (Вам нужно явно установить db_index = False , если вы не хотите индекс.)

5
добавлено
Thanx. вот что я хотел знать)))
добавлено автор oleg.foreigner, источник
Django
Django
1 931 участник(ов)

Полезная информация и правила: https://github.com/django-ru/faq Вакансии и резюме: @django_jobs Пофлудить идём сюда: @django_flood Статистика чата: combot.org/chat/-1001063854692

django_jobs
django_jobs
916 участник(ов)

Поиск и предложения работы (Django) Правила: https://t.me/django_jobs/4 Вакансии с тегом #job улетают в канал @django_jobs_board Вопросы к @amureki Основной чат @pydjango

Django
Django
733 участник(ов)

Веб-фреймворк для перфекционистов с дедлайнами. Наша группа на vk: https://vk.com/django_framework В Discord: https://discord.me/django_framework по всем вопросам @MechanisM

django flood
django flood
71 участник(ов)

Флудилка джангистов Пока без правил