Opened 17 years ago
Closed 17 years ago
#6013 closed (duplicate)
management.find_commands makes distribute django app difficultly.
Reported by: | bear330 | Owned by: | jdetaeye |
---|---|---|---|
Component: | Core (Other) | Version: | dev |
Severity: | Keywords: | ||
Cc: | Triage Stage: | Unreviewed | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
django.core.management.find_commands only searches the commands that ends with .py, but if I want to distribute django application to others and don't want to distribute source code, this will be a barrier.
Actually, I want to distribute my django application using py2exe to be a desktop application.
My approach in this time is:
import django.core.management
def find_commands(management_dir):
command_dir = os.path.join(management_dir, 'commands')
try:
return [f[:-4] for f in os.listdir(command_dir)
if not f.startswith('_') and f.endswith('.pyo')]
except OSError:
return []
django.core.management.find_commands = find_commands
from django.core.management import ProjectManagementUtility
os.environDJANGO_SETTINGS_MODULE = 'settings'
utility = ProjectManagementUtility(sys.argv, executableDir)
utility.execute()
It looks silly.
If django.core.management.find_commands can search .py, .pyc and .pyo, I don't need to this anymore.
This will make distribute django more easily and more flexible.
Thanks for your effort.
Sorry about that, the source code in middle of this ticket is broken because I forget to format it as code block.
Unfortunately, I don't know how to edit it... :p