Так что мне пришлось немного подправить свой вид кода чтобы заставить это работать. Смотря в socialauth.views, вы видите, что мы получаем атрибут FACEBOOK_APP_ID из нашего файла настроек. Это хорошо.
Глядя на socialauth/login_page.html шаблон, есть раздел:
{% if FACEBOOK_APP_ID %}
<div id="facebook">
<p><fb:login-button perms="{{ login_button_perms }}"></fb:login-button></p>
</div>
{% endif %}
Теперь, это, как представляется, доступ к переменной FACEBOOK_APP_ID. Конечно, мы получаем этот атрибут в socialauth.views. Однако у нас есть одна проблема. Мы никогда не выставляем переменную шаблону (что нужно делать вручную, помните?). Таким образом, мы заменим старый вид login_page:
def login_page(request):
return render_to_response('socialauth/login_page.html',
{'next': request.GET.get('next', LOGIN_REDIRECT_URL)},
context_instance=RequestContext(request))
с:
def login_page(request):
return render_to_response('socialauth/login_page.html', {
'next': request.GET.get('next', LOGIN_REDIRECT_URL),
'FACEBOOK_APP_ID': FACEBOOK_APP_ID,
},
context_instance=RequestContext(request))
Обратите внимание, что единственное различие находится в строке 'FACEBOOK_APP_ID': FACEBOOK_APP_ID.