Django DEBUG magic, and a bizarre bug under django-extra-views

49 views
Skip to first unread message

Alaina Rowe

unread,
Dec 6, 2019, 6:08:41 PM12/6/19
to Django users
I have not been able to reproduce the bug I am about to describe when DEBUG is True, whether in production on Apache or locally on the Django dev server. So my first question is: What is all the magic that Django DEBUG does behind the scenes? The documentation doesn't have very much information about this.

Now for the bug. I understand that the following description is too bare-bones for anyone to reproduce, but I have IP to protect, and I don't have much hope of the error being reproduced anyway.

Suppose I have a Django project with at least two apps, app alice with model A and app bob with model B.

I am using UpdateWithInlinesView from django-extra-views. The error occurs when this view constructs a formset from instances of model A. In my email about the 500, I get a message like this:

FieldError at /some/url/
Cannot resolve keyword 'field_of_A' into field. Choices are: field_of_B_1, field_of_B_2, field_of_B_3

I've gotten this type of error before. It normally happens when you tell a form "I'm using model C" and "I'm using a field called debbie" and model C doesn't have a field called debbie. That part makes sense. But this error makes it look like it's checking against the field names of model B when it should be checking model A. I have been racking my brain trying to figure out how in the world the construction of a form from one model would consult a different model from a different app.

Furthermore, this doesn't happen most of the time, it goes away on server restart, and it doesn't happen under DEBUG = True. So I'm wondering if it's an app registry issue, some sort of race condition that gets the registry out of whack. If so, then I might get somewhere by either understanding the app registry better or understanding what DEBUG does.

Any thoughts?

Daniel Chimeno

unread,
Dec 7, 2019, 8:27:44 AM12/7/19
to Django users
+1 to more document about DEBUG magic.

Integr@te System

unread,
Dec 7, 2019, 12:44:02 PM12/7/19
to django...@googlegroups.com
Hi issuer,

Plz look at model built by UpdateWithInlinesView 
to see if you mistake from limit of string return from get_absolute_url()


must contain ASCII RFC2396 section 2

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/fb61e2e6-001b-407c-b966-a3c1dc203a59%40googlegroups.com.

Dvs Khamele

unread,
Dec 7, 2019, 12:46:47 PM12/7/19
to django...@googlegroups.com
Hi do you hire contract based python/django freelancer?
 I can help you in this 
Best Regards, 
Divyesh Khamele

Dvs Khamele

unread,
Dec 7, 2019, 12:46:54 PM12/7/19
to django...@googlegroups.com
Hi do you hire contract based python/django freelancer?
 I can help you in this 
Best Regards, 
Divyesh Khamele

Dvs Khamele

unread,
Dec 7, 2019, 12:47:19 PM12/7/19
to django...@googlegroups.com
Hi do you hire contract based python/django freelancer?
 I can help you in this 
Best Regards, 
Divyesh Khamele

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users...@googlegroups.com.

Alaina Rowe

unread,
Dec 11, 2019, 11:28:53 AM12/11/19
to Django users
Quick bump to see if anyone has insight on this.

lemme smash

unread,
Dec 16, 2019, 8:19:29 AM12/16/19
to Django users
i feel for you, but from this description there is no way to figure out how to help. it's way too abstract. so you probably may want to provide code piece and traceback to get any kind of help here.

Mike Dewhirst

unread,
Dec 16, 2019, 7:16:25 PM12/16/19
to django...@googlegroups.com
On 17/12/2019 12:19 am, lemme smash wrote:
> i feel for you, but from this description there is no way to figure
> out how to help. it's way too abstract. so you probably may want to
> provide code piece and traceback to get any kind of help here.

+1

It might help to actually build the two-app project alice+bob to try and
prove the problem. Assuming that doesn't prove it, you could then add in
more and more of the existing project until it barfs.

I've had heaps of experience with similar intractable problems and in
every case (so far) simplifying things and then re-introducing
"features" has proven absolutely that it was my fault.

YMMV
> --
> You received this message because you are subscribed to the Google
> Groups "Django users" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to django-users...@googlegroups.com
> <mailto:django-users...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/django-users/a3d0924d-b3d1-4385-9d02-b0fae9defc07%40googlegroups.com
> <https://groups.google.com/d/msgid/django-users/a3d0924d-b3d1-4385-9d02-b0fae9defc07%40googlegroups.com?utm_medium=email&utm_source=footer>.

Alaina Rowe

unread,
Dec 16, 2019, 8:08:28 PM12/16/19
to Django users
When I get work time to do it, I'll try to post a traceback and some code with renaming to remove project-specific information.

I know that building a minimal example that demonstrates the problem would help. The issue with that is, I'd have to get permission to deploy it to our production environment to see if it has the same problem. But that might be worth doing.
Reply all
Reply to author
Forward
0 new messages