Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 9, 2020 20:22:06

raulIQ
Зарегистрирован: 2019-10-11
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

AttributeError

Я новичок в программировании и читая книгу наткнулся на такую ошибку:
AttributeError at
'str' object has no attribute ‘_default_manager’
twviews:

 from django.views.generic import TemplateView
from django.views.generic.detail import DetailView
from .models import Category, Good
from django.core.paginator import Paginator, InvalidPage
class GoodListView(TemplateView):
	template_name = 'index.html'
	def get_context_data(self, **kwargs):
		context = super(GoodListView, self).get_context_data(**kwargs)
		page_num = self.request.GET.get('page',1)
		context['cats'] = Category.objects.order_by('name')
		if kwargs['cat_id'] == None:
			context['category'] = Category.objects.first()
		else:
			context['category'] = Category.objects.get(pk = kwargs['cat_id'])
		paginator = Paginator(Good.objects.filter(category = context['category']).order_by('name'),1)
		try:
			context['goods'] = paginator.page(page_num)
		except InvalidPage:
			context['goods']  = paginator.page(1)
		return context
class GoodDetailView(DetailView):
	template_name = 'good.html'
	model = 'Good'
	pk_url_kwarg = 'good_id'
	def get_context_data(self, **kwargs):
		context = super(GoodDetailView, self).get_context_data(**kwargs)
		context['pn'] = self.request.GET.get('page',1)
		context['cats'] = Category.objects.order_by('name')
		return context
urls:
 from django.urls import path
from . import views
from .twviews import GoodListView, GoodDetailView 
urlpatterns = [
    path('<int:cat_id>/', GoodListView.as_view(), name = 'index'),
    path('good/<int:good_id>/', GoodDetailView.as_view(), name = 'good')
]
Как решить данную проблему?

Офлайн

#2 Фев. 9, 2020 23:00:31

Romissevd
От: Счастье
Зарегистрирован: 2015-03-01
Сообщения: 533
Репутация: +  76  -
Профиль   Отправить e-mail  

AttributeError

Где то ты пытаешься получить атрибут _default_manager у какой-то строки. Нужно выкладывать весь Traceback ошибки

Офлайн

#3 Фев. 10, 2020 13:14:32

raulIQ
Зарегистрирован: 2019-10-11
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

AttributeError

Romissevd
Где то ты пытаешься получить атрибут _default_manager у какой-то строки. Нужно выкладывать весь Traceback ошибки
Traceback (most recent call last):
File “C:\raul\lib\site-packages\django\core\handlers\exception.py”, line 34, in inner
response = get_response(request)
File “C:\raul\lib\site-packages\django\core\handlers\base.py”, line 115, in _get_response
response = self.process_exception_by_middleware(e, request)
File “C:\raul\lib\site-packages\django\core\handlers\base.py”, line 113, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File “C:\raul\lib\site-packages\django\views\generic\base.py”, line 71, in view
return self.dispatch(request, *args, **kwargs)
File “C:\raul\lib\site-packages\django\views\generic\base.py”, line 97, in dispatch
return handler(request, *args, **kwargs)
File “C:\raul\lib\site-packages\django\views\generic\detail.py”, line 106, in get
self.object = self.get_object()
File “C:\raul\lib\site-packages\django\views\generic\detail.py”, line 30, in get_object
queryset = self.get_queryset()
File “C:\raul\lib\site-packages\django\views\generic\detail.py”, line 67, in get_queryset
return self.model._default_manager.all()
AttributeError: ‘str’ object has no attribute ‘_default_manager’

Офлайн

#4 Фев. 10, 2020 20:26:56

Romissevd
От: Счастье
Зарегистрирован: 2015-03-01
Сообщения: 533
Репутация: +  76  -
Профиль   Отправить e-mail  

AttributeError

ничего не могу сказать. Может в моделях где ошибка, как пишут тут.. Просмотри внимательно код

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version