很想知道它是否是第一个使用 django social 登录的用户?

Hot to find out if it is first user log in with django social?

我正在构建一个应用程序, django social,我需要在用户注册时做一些事情,但我无法确定这是否是他第一次登录,我该怎么做没有改变用户数据库,也没有 last_login == date_joined (因为我认为这是很脏的方式,如果不是请告诉我) 也为我有些地方的英语不好感到抱歉。

如果是第一次用户登录,last_login字段将为NULL。您可以覆盖 LoginView 和 form_valid,例如:

class LoginView(auth_views.LoginView):
    """Renders the client login page."""

    def form_valid(self, form):
        """Security check complete. Log the user in."""
        auth_login(self.request, form.get_user())
        
        if self.request.user.is_authenticated and not self.request.user.date_joined:
            # do your stuff
            
        return HttpResponseRedirect(self.get_success_url()) 

此外,请确保将此视图添加到 urls.py

中的登录名 url