Opened 5 hours ago
Last modified 30 minutes ago
#36103 assigned Cleanup/optimization
Simplify get_namespace() and adjust get_and_report_namespace() method signature for automatic imports in Shell command
Reported by: | Salvo Polizzi | Owned by: | Salvo Polizzi |
---|---|---|---|
Component: | Core (Management commands) | Version: | 5.2 |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Accepted | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description (last modified by )
Following the last discussion in PR, we propose the following improvements to enhance readability and reduce confusion:
- Simplify
get_namespace()
:- The current implementation of get_namespace() can be rewritten as a one-liner for better readability without changing its functionality.
- Example:
#current def get_namespace(self): apps_models = apps.get_models() namespace = {} for model in reversed(apps_models): if model.__module__: namespace[model.__name__] = model return namespace #proposed def get_namespace(): return {m.__name__: m for m in reversed(apps.get_models()) if m.__module__}
- Update
get_and_report_namespace()
:- The
no_imports
parameter in the method signature can be misleading and cause confusion for its users. - Proposed Change: Remove the
no_imports
parameter from the method and instead handle its logic in the relevant runners where the namespace is imported. - Justification: This improves separation of concerns and makes the method more focused.
- The
Change History (3)
comment:1 by , 5 hours ago
Description: | modified (diff) |
---|
comment:2 by , 30 minutes ago
Triage Stage: | Unreviewed → Accepted |
---|---|
Version: | dev → 5.2 |
comment:3 by , 30 minutes ago
Summary: | Simplify get_namespace() and adjust get_and_report_namespace() method signature → Simplify get_namespace() and adjust get_and_report_namespace() method signature for automatic imports in Shell command |
---|
Note:
See TracTickets
for help on using tickets.
Thank you Salvo for this ticket, I overall agree except for the
no_imports
, I have no problem to remove it fromget_and_report_namespace
but we should do it in a way that does not duplicate logic/checks. Thank you!