#32266: Inspectdb command shows ugly classnames from django-based tables
-------------------------------------+-------------------------------------
Reporter: | Owner: nobody
FJLendinez |
Type: | Status: new
Cleanup/optimization |
Component: Core | Version: 3.1
(Management commands) |
Severity: Normal | Keywords: inspectdb command
Triage Stage: | Has patch: 1
Unreviewed |
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 1
UI/UX: 0 |
-------------------------------------+-------------------------------------
Today I used the inspectdb command to test it. When it recovered the
models, I see that class names are "ugly" when these models are default-
created Django models.
For example:
** Original model**
{{{
class User(AbstractUser):
# ...
token = models.CharField(default=get_random_string, unique=True,
max_length=20)
}}}
**Generated model**
{{{
class UsersUser(models.Model):
token = models.CharField(unique=True, max_length=20)
# ...
class Meta:
managed = False
db_table = 'users_user'
}}}
----
UsersUser (or AppnameModel) could be counterintuitive, a simple flag
**--remove-appnames** is enough to indicate that the first word could be
removed (understanding that most of the app names are only a word).
Here we can check that the flag is active and remove the first word:
https://github.com/django/django/blob/master/django/core/management/commands/inspectdb.py#L43
**This improvement seems trivial but is useful enough to take it into
account because these table names need manual actions, avoiding sync
models automatically between projects automatically (for example)**
--
Ticket URL: <https://code.djangoproject.com/ticket/32266>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/053.9074aad959a199654deb41d79b41359f%40djangoproject.com.