7

当我尝试按照本教程在我的 Django 1.4 上安装 Google-auth2 时,出现此错误:

Traceback (most recent call last):
  File "./manage.py", line 11, in <module>
    import settings
  File "/home/ubuntu/xx/settings.py", line 140, in <module>
    GOOGLE_OAUTH2_CLIENT_ID = os.environ['GOOGLE_OAUTH2_CLIENT_ID']
NameError: name 'os' is not defined

这一行是:

139- LOGIN_REDIRECT_URL = '/'

**140- GOOGLE_OAUTH2_CLIENT_ID = os.environ['GOOGLE_OAUTH2_CLIENT_ID']**

141- GOOGLE_OAUTH2_CLIENT_SECRET = os.environ['GOOGLE_OAUTH2_CLIENT_SECRET']
142- GOOGLE_WHITE_LISTED_DOMAINS = ['mydomain.org']
SOCIAL_AUTH_USER_MODEL = 'auth.User'
4

1 回答 1

34

您尝试使用未导入的模块中的某些os内容,因此您无法使用它。

为了解决这个问题,在开头的某处添加该模块的导入settings.py

import os

此外,如果您没有GOOGLE_OAUTH2_CLIENT_IDin os.environ,请不要从那里加载它。相反,直接将其设置在settings.py

GOOGLE_OAUTH2_CLIENT_ID = 'your-actual-client-id-value'

或者,您可以在运行脚本之前先在 shell 中设置它:

export GOOGLE_OATH2_CLIENT_ID='your-actual-client-id-value'
于 2012-08-04T11:43:11.693 回答