﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
27957	Remove technical terms from InlineForeignKeyField/ModelMultipleChoiceField error messages	Jon Dufresne	nobody	"Some error messages in `django.forms.models` use technical jargon that is often very confusing to normal web users. For example, the words ""foreign key"" and ""primary key"". I think the error messages should target a general web audience instead of developers.

Scenario: A `ModelForm` is used to submit GET requests. A user copies a URL with a query string and passes it to a friend. Upon entering the URL, a typo is introduced. This typo results in an error that could read:

> ""123a"" is not a valid value for a primary key.

Most web users have no idea what a primary key is and therefore will be confused by what steps to take to fix the error. I think Django should avoid technical database terms in user facing error messages.

I'm proposing the following changes, but I'm very open to alternative phrasing that would give a more useful error message in more situations:

> ""%(pk)s"" is not a valid value for a primary key.

Becomes

> ""%(pk)s"" is not a valid value.

And

> The inline foreign key did not match the parent instance primary key.

Becomes

> The inline value did not match the parent instance."	Cleanup/optimization	closed	Forms	dev	Normal	fixed			Ready for checkin	1	0	0	0	0	0
