Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Getting the "str" has no property "_default_manager" on a Django app just on startup

Right after I restart Apache to pick up the new Django changes, I get the following errors for probably 30 seconds to a minute afterwards:

ViewDoesNotExist: Tried home_page in module project.app.views. Error was: 'str' object has no attribute '_default_manager'

The errors go away after a bit, but it's very odd. Any idea how to debug this or what might be causing it?

like image 239
Bialecki Avatar asked Dec 27 '22 21:12

Bialecki


2 Answers

I think it's this bug:

http://code.djangoproject.com/ticket/10405#comment:11

Seems like a perfect fit considering google searches don't show much else, and that your problem goes away after some time - according to this ticket due to lazy loading of model strings.

The comment suggests adding the following before your admin autodiscover function.

from django.db.models.loading import cache as model_cache
if not model_cache.loaded:
    model_cache.get_models()
like image 131
Yuji 'Tomita' Tomita Avatar answered Feb 13 '23 21:02

Yuji 'Tomita' Tomita


I am newbie to Django python, my mistake was in view.py, model part

model = ‘Article'

ArticleListViews(ListView):
    model = 'Article'
    template_name = ‘article.html'

it raise same error. model = Article is correct. I don’t need to put the name of model in quotations.

enjoy coding.

like image 30
ila idamas Avatar answered Feb 13 '23 22:02

ila idamas