一些manage.py命令将Django应用程序作为参数.有时我想使用这些命令,但不记得应用程序的名称.有没有办法让manage.py提供这样的列表?
没有准备好,但你可以管道:
$ echo 'import settings; settings.INSTALLED_APPS' | ./manage.py shell
...
>>> ('django.contrib.auth', 'django.contrib.contenttypes',
'django.contrib.sessions', 'django.contrib.sites'...]
Run Code Online (Sandbox Code Playgroud)
或者写一个小的自定义命令:
import settings
from django.core.management.base import BaseCommand
class Command(BaseCommand):
def handle(self, *args, **options):
print settings.INSTALLED_APPS
Run Code Online (Sandbox Code Playgroud)
或者以更通用的方式:
import settings
from django.core.management.base import BaseCommand
class Command(BaseCommand):
def handle(self, *args, **options):
print vars(settings)[args[0]]
$ ./manage.py get_settings INSTALLED_APPS
('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions',
'django.contrib.sites', ...]
$ ./manage.py get_settings TIME_ZONE
America/Chicago
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5172 次 |
| 最近记录: |