Это потому, что PyLint
ничего не знает о метаклассах Django, которые предоставляют атрибут objects
. В любом случае, ваша E1101 ошибка - это просто предупреждение, и вы можете отключить его или использовать специальный плагин pylint-django , чтобы PyLint знал о магии, которую совершает Django.
Другая проблемавашего кода неверное использование контекста, переданного в вызов render :
return render(request, 'index.html', {'products': Products})
Контекст - это объект Python Dictionary , в котором будет доступен value
в шаблоне через key
. Вы передаете свой набор запросов с помощью ключа products
, но итерируете по ключу Products
(обратите внимание на первую заглавную букву) в вашем шаблоне, который не задан, поэтому ваш шаблон не будет ничего визуализировать.