При выполнении следующей QuerySet в оболочке Django (python manage.py shell
):QuerySet работает в оболочке, но не в views.py - Джанго 1,10
Employee.objects.filter(restaurant__pk = 1)
я получаю результат обратно:
<QuerySet [<Employee: Joyce McDonnals>]>
Пожалуйста извините, потому что я новичок в Django. Я пытаюсь выполнить этот запрос в динамическом режиме на моей веб-странице через ПК. get_queryset
который я определил в views.py является:
class EmployeeList(ListView):
template_name= "Restaurants/employee_list.html"
model = Employee
def get_queryset(self, **kwargs):
queryset = Employee.objects.filter(pk= restaurant.pk)
return queryset
Но это возвращает ошибку:
NameError at /restaurant/1/employees/
name 'restaurant' is not defined
Request Method: GET
Request URL: http://127.0.0.1:8001/restaurant/1/employees/
Django Version: 1.10.5
Exception Type: NameError
Exception Value:
name 'restaurant' is not defined
Я пробовал несколько вариантов для QuerySet в моем views.py, но я могу Кажется, он работает. Может ли кто-нибудь помочь мне определить этот запрос?
Проблема не QuerySet, но стандартный Python обзорное. Откуда стоит стоимость «ресторана»? –
'restaurant' был определен в моей модели Employee как иностранный ключ к модели' RestaurantFeature', например: 'restaurant = models.ForeignKey (RestaurantFeature, on_delete = models.CASCADE)' –
Но это не отвечает на вопрос ; \ где - значение * *, которое вы хотите отфильтровать? –