You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用dj-rest-auth实现Facebook登录时报NoReverseMatch错误如何解决

修复方案

该报错是dj-rest-auth的社交登录逻辑依赖django-allauth内置的socialaccount_signup路由,当前未注册该路由导致查找失败,按以下步骤修复即可:

  • 第一步:补充注册allauth社交账号路由
    修改你的urls.py,在urlpatterns中新增allauth社交账号相关路由,修改后示例如下:
from django.urls import path, include
# 你原有导入保持不变

app_name = "social_app"
urlpatterns = [
    path('v1/auth/', include('dj_rest_auth.urls')),
    path('v1/auth/registration/', include('dj_rest_auth.registration.urls')),
    path('v1/auth/facebook/', FacebookLogin.as_view(), name='fb_login'),
    # 新增下面这行配置
    path('accounts/', include('allauth.socialaccount.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
  • 第二步:确认基础配置正确
    在settings.py中检查或追加以下配置:
# 配置站点ID,django-allauth依赖该配置
SITE_ID = 1
# 开启社交账号自动注册,无需跳转额外注册页
SOCIALACCOUNT_AUTO_SIGNUP = True

完成上述配置后重启服务即可解决该报错。

内容的提问来源于stack exchange,提问作者Mehady

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 08:09:03