我有一个学生测验应用程序。现在,学生必须首先在平台上抵抗,然后他们选择课程,并在他们面前出现相关的测验。 但是我想要的是:学生不必先注册。他们可以选择课程,然后参加一个测验,然后我将提示他们进行注册。我想要的是;当他们注册时,我可以将他们的课程之类的数据保存到匿名用户(他们在注册之前选择),并将其链接到他们注册后将创建的帐户。 那么我怎么知道他们在注册之前选择了什么课程,以及如何在注册之后将其链接到用户? 最好通过django rest框架作为我们的android应用程序。
答案 0 :(得分:0)
您可以基于会话密钥创建“伪造”用户。像
if not self.request.user.is_authenticated():
#create anonymous user
self.request.session.save()
username = str(self.request.session.session_key) + '@dummy.com'
try:
user = MyUser.objects.create_user(username, is_fake=True)
except:
user = MyUser.objects.get(email=username)
login(self.request, user)
然后,如果您具有这种格式的用户名,您就知道他们不是真实用户,并提供了有关登录等的常规选项。