【发布时间】:2010-02-19 18:28:53
【问题描述】:
目前我的settings.py 文件中有这个:
DEBUG = True
LOCAL = True
TEMPLATE_DEBUG = DEBUG
SITE_TITLE = 'Stack Overflow Question'
REMOTE_SITE_URL = "http://************:8080"
LOCAL_SITE_URL = "http://************:8000"
ADMINS = (
# ('Your Name', 'your_email@domain.com'),
)
MANAGERS = ADMINS
if LOCAL:
SITE_URL = LOCAL_SITE_URL
ROOT_URL = '/mnt/hgfs/Sites/************'
engine = 'sqlite3'
dbName = '************.db'
dbUser = ''
dbPassword = ''
dbHost = ''
dbPort = ''
else:
SITE_URL = REMOTE_SITE_URL
ROOT_URL = '/var/www/vhosts/www.*************.com/public/'
engine = 'mysql'
dbName = '************'
dbUser = 'www-data'
dbPassword = '************'
dbHost = ''
dbPort = ''
这个想法是,如果我将LOCAL=True 修改为false,我可以在sqlite3 数据库和服务器上保留的mysql 之间切换。但这在使用 SVN 时很麻烦。我想要的是settings.py 能够智能地知道它是在服务器上还是在本地运行。有没有办法嗅探 URL、IP 或简单地检查服务器上存在而不是本地的文件?我不仅在寻找解决方案,而且还在寻找不对服务器征税的解决方案。如果每次 Django 呈现页面时都会检查文件是否存在,那么检查文件是否存在可能会有点繁重。有什么建议吗?
【问题讨论】: