我有:
一个有Django的网站:它有django-allauth ; 我可以通过常规登录和facebook登录连接它,它们可以通过浏览器(Cookies身份验证)正常工作.
我正在构建一个Android应用程序,它应该提供我的网站的登录,注册,密码重置和API消费; 似乎我应该使用令牌身份验证移动; 对于常规令牌登录,我将使用django rest框架令牌身份验证,因为:
如果成功通过身份验证,TokenAuthentication将提供以下凭据.
request.user将是一个Django用户实例.
request.auth将是一个rest_framework.authtoken.models.BasicToken实例.
我需要管理用户的操作.因此,我将为移动App用户创建一个单独的用于令牌 - 常规登录的API.当用户提供正确的用户名和密码时,将在服务器端生成令牌,然后它将返回给它(移动应用程序),以便在每个需要身份验证的请求上将其发送回服务器.
所有这些都应该没问题,但是,问题是如何通过我的移动应用程序使用Facebook登录我的网站,移动应用程序应该与Facebook按钮连接,这使用户能够使用他们的Facebook帐户连接(也许他们将是要求通过Facebook确认)
我需要知道这是怎么可能的,我想得到:
request.user将是一个Django用户实例.在每个请求中执行.
对PhoneGap不感兴趣.
对于Internet浏览器用户(Web),我不会改变任何内容.
所以这就是问题所在.我有2个型号:
裁判级别和裁判
这两个是:
class RefereeLevel(models.Model):
level = models.PositiveSmallIntegerField(blank=False,default=1,verbose_name=_("level"),unique=True)
salary = models.DecimalField(blank=False,default=0.00,decimal_places=2,max_digits=4,verbose_name=_("salary"))
def __unicode__(self): # Python 2.7: def __unicode__(self):
return self.level
Run Code Online (Sandbox Code Playgroud)
第二节课:
class Referee(models.Model):
member = models.OneToOneField(Member,related_name='member',blank=False)
information = models.ForeignKey(RefereeLevel,related_name='information',blank=False,null=True,default=1)
Run Code Online (Sandbox Code Playgroud)
现在发生的是,如果我删除了RefereeLevel,那么该级别的裁判将被删除.但我不希望这样,我希望将裁判的信息设置为无.
那可能吗?
谢谢,阿拉
Python的功能True, False = False, True是什么?
我试过了
True, False = False, True
print(1==1)
Run Code Online (Sandbox Code Playgroud)
得到:
真正
和
True, False = False, True
print(1==2)
Run Code Online (Sandbox Code Playgroud)
得到:
假