Думаю, я не повторяю вопрос, поскольку не могу найти ответ на мой вопрос.Django FieldError at/admin/app/modelClass/
Мой класс модели в models.py выглядит следующим образом:
class UserDetail(models.Model):
user = models.OneToOneField(User)
users = User.objects.all()
Instance_ID = models.CharField(max_length=10, unique=True)
Service_ID = models.CharField(max_length=15, unique=True)
Reference_ID = models.CharField(max_length=15, unique=True)
и admin.py выглядит следующим образом:
class UserDetailAdmin(admin.ModelAdmin):
list_display = ('user','Instance_ID','Service_ID','Reference_ID')
search_fields = ('users__User','Instance_ID','Service_ID','Reference_ID')
Как найти пользовательские поля? Если я попробую только «пользователь» или «user_id» в search_fields, я получаю следующую ошибку.
TypeError at /admin/app/UserDetail/ -----> "Related Field got invalid lookup: icontains"
и если я пытаюсь «User__users» или «users__User» или «пользователи» в search_fields, я получаю следующее сообщение об ошибке поля:
FieldError at /admin/app/UserDetail/ ----> "Cannot resolve keyword 'users' into field. Choices are: Reference_ID, Service_ID, Instance_ID, user, user_id"
, что я делаю неправильно? Может кто-то мне точку в правильном направлении
Благодаря
Практически не рекомендуется иметь ссылку на поле как User.objects.all(). То, что вы, вероятно, хотите, - это представление, которое использует запрос в качестве поля поиска для пользователя, а затем вызывается User.objects.filter (username = queryparameter). –
Да, я действительно удалил его сейчас. Я работаю только с «user = models.OneToOneField (User)» и полем поиска как «user__username» – nagsrk