如何从终端中的django app从settings.py打印BASE_DIR?

use*_*647 11 python django terminal

如何从终端中的django app从settings.py打印BASE_DIR?我在test1.py文件中有以下代码:

import os
import django
import settings

print BASE_DIR
Run Code Online (Sandbox Code Playgroud)

但它打印错误:

File "test1.py", line 5, in <module>
    print BASE_DIR
NameError: name 'BASE_DIR' is not defined
Run Code Online (Sandbox Code Playgroud)

我的目标是编写BASE_DIR的值来查看Django项目使用的dir.

Yur*_*pup 15

这些命令将有助于:

python manage.py shell
Run Code Online (Sandbox Code Playgroud)

然后在python shell类型中:

from django.conf import settings
print(settings.BASE_DIR)
Run Code Online (Sandbox Code Playgroud)


cat*_*ran 10

您应该打印导入模块的属性:

print settings.BASE_DIR
Run Code Online (Sandbox Code Playgroud)

或者从模块导入此变量:

from settings import BASE_DIR

print BASE_DIR
Run Code Online (Sandbox Code Playgroud)

  • 你应该[导入`django.conf.settings`](https://docs.djangoproject.com/en/1.7/topics/settings/#using-settings-in-python-code).这是一个围绕您的设置的包装器对象,它将填充任何默认值并为站点特定的设置提供支持.因为这是一个包装器对象而不是模块,所以你不能使用`from django.conf.settings import BASE_DIR`. (6认同)