J'ai donc dû modifier légèrement leur code de vue pour que cela fonctionne. En regardant socialauth.views, vous voyez que nous obtenons l'attribut FACEBOOK_APP_ID de notre fichier de paramètres. C'est bon.
En regardant le socialauth/login_page.html modèle, il y a une section:
{% if FACEBOOK_APP_ID %}
<div id="facebook">
<p><fb:login-button perms="{{ login_button_perms }}"></fb:login-button></p>
</div>
{% endif %}
Maintenant, cela semble être l'accès à la FACEBOOK_APP_ID variable. Bien sûr, nous obtenons cet attribut dans socialauth.views. Cependant, nous avons un problème. Nous n'exposons jamais la variable au modèle (ce qui doit être fait manuellement, souvenez-vous?). Donc, nous remplaçons le vieux vue 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))
avec:
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))
Notez que la seule différence est dans la ligne 'FACEBOOK_APP_ID': FACEBOOK_APP_ID.