﻿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
25036	`manage.py migrate --noinput` does not delete stale content types	Ed Morley	nobody	"Ticket [https://code.djangoproject.com/ticket/12339 #12339] made the check for stale content types prompt before deletion:
[https://github.com/django/django/blob/c31bf8cb54e591e244abc951896ef5e4a089f38d/django/contrib/contenttypes/management.py#L60-L75 django/contrib/contenttypes/management.py#L60-L75]

eg:

{{{
The following content types are stale and need to be deleted:

    model | foo

Any objects related to these content types by a foreign key will also
be deleted. Are you sure you want to delete these content types?
If you're unsure, answer 'no'.

    Type 'yes' to continue, or 'no' to cancel:
}}}


I need to avoid the prompt for my deploy script (as well as local development setup scripts), so thought I could just pass `--noinput` to migrate.

However as can be seen at the link above, this doesn't delete the stale content types - as it's equivalent to answering 'no' at the prompt.

I think `--noinput` should be equivalent to entering 'yes', or else there should be a `--force` option - for people that know the issues with cascade deletes do not affect them.

I'm happy to open a PR - which approach would people prefer? (I'm presuming the latter, to prevent surprising people already using `--noinput`)

Thanks! :-)"	New feature	closed	contrib.contenttypes	dev	Normal	duplicate			Unreviewed	0	0	0	0	1	0
