7
from django.conf import settings
def my_view(self, request, *args, **kwargs):
if 'LOCAL' in settings and settings.LOCAL:
# do something
TypeError at ... argument of type 'LazySettings' is not iterable類型'LazySettings'的django參數不可迭代;那麼如何檢查一個設置是否存在?
然後如何檢查設置是否存在?否則,我會收到屬性錯誤。
嗯,我得到興奮你的答案。但它仍然失敗。 >>>如果GETATTR(設置, '垃圾'): ...打印 '你好' ... 回溯(最近通話最後一個): 文件 「」,1號線,在 文件「/用戶/ben/Envs/menus_proto/lib/python2.7/site-packages/django/utils/functional.py」,線路277,在__getattr__ 返回GETATTR(self._wrapped,名稱) AttributeError的: '設置' 對象沒有屬性'JUNK' –
2012-07-14 23:30:02
你需要提供一個默認值作爲第三個參數,即'getattr(settings,'name',None)'。或者,由於您不需要實際的值,因此使用'hasattr(settings,'name')',它只是檢查名稱而不是獲取它的值。 – 2012-07-15 04:10:35
我已經更新了答案。 – 2012-07-15 08:19:44