修改oauth用户
This commit is contained in:
+9
-1
@@ -3,4 +3,12 @@ from django.contrib import admin
|
||||
# Register your models here.
|
||||
from .models import BlogUser
|
||||
|
||||
admin.site.register(BlogUser)
|
||||
|
||||
|
||||
class BlogUserAdmin(admin.ModelAdmin):
|
||||
list_display = ('id', 'nickname', 'username','email','last_login','date_joined')
|
||||
list_display_links = ('id', 'username')
|
||||
|
||||
|
||||
|
||||
admin.site.register(BlogUser, BlogUserAdmin)
|
||||
|
||||
+2
-2
@@ -8,11 +8,11 @@ class OAuthUser(models.Model):
|
||||
author = models.ForeignKey(settings.AUTH_USER_MODEL, verbose_name='用户', blank=True, null=True)
|
||||
openid = models.CharField(max_length=50)
|
||||
nikename = models.CharField(max_length=50, verbose_name='昵称')
|
||||
token = models.CharField(max_length=150)
|
||||
token = models.CharField(max_length=150, null=True, blank=True)
|
||||
picture = models.CharField(max_length=350, blank=True, null=True)
|
||||
type = models.CharField(blank=False, null=False, max_length=50)
|
||||
email = models.CharField(max_length=50, null=True, blank=True)
|
||||
token = models.CharField(max_length=50, null=True, blank=True)
|
||||
matedata = models.CharField(max_length=2000, null=True, blank=True)
|
||||
|
||||
def __str__(self):
|
||||
return self.nikename
|
||||
|
||||
+4
-18
@@ -117,6 +117,7 @@ class WBOauthManager(BaseOauthManager):
|
||||
|
||||
datas = json.loads(rsp)
|
||||
user = OAuthUser()
|
||||
user.matedata = rsp
|
||||
user.picture = datas['avatar_large']
|
||||
user.nikename = datas['screen_name']
|
||||
user.openid = datas['id']
|
||||
@@ -185,6 +186,7 @@ class GoogleOauthManager(BaseOauthManager):
|
||||
|
||||
datas = json.loads(rsp)
|
||||
user = OAuthUser()
|
||||
user.matedata = rsp
|
||||
user.picture = datas['picture']
|
||||
user.nikename = datas['name']
|
||||
user.openid = datas['sub']
|
||||
@@ -255,6 +257,7 @@ class GitHubOauthManager(BaseOauthManager):
|
||||
user.openid = datas['id']
|
||||
user.type = 'github'
|
||||
user.token = self.access_token
|
||||
user.matedata = rsp
|
||||
if datas['email']:
|
||||
user.email = datas['email']
|
||||
|
||||
@@ -318,6 +321,7 @@ class FaceBookOauthManager(BaseOauthManager):
|
||||
user.openid = datas['id']
|
||||
user.type = 'facebook'
|
||||
user.token = self.access_token
|
||||
user.matedata = rsp
|
||||
if datas['email']:
|
||||
user.email = datas['email']
|
||||
if datas['picture'] and datas['picture']['data'] and datas['picture']['data']['url']:
|
||||
@@ -327,24 +331,6 @@ class FaceBookOauthManager(BaseOauthManager):
|
||||
logger.warn(e)
|
||||
return None
|
||||
|
||||
"""
|
||||
params = {
|
||||
'input_token': self.access_token,
|
||||
'access_token': self.client_id + '|' + self.client_secret
|
||||
}
|
||||
url = 'https://graph.facebook.com/debug_token' # + urllib.parse.urlencode(params)
|
||||
rsp = self.do_get(url, params)
|
||||
try:
|
||||
obj = json.loads(rsp)
|
||||
userid = str(obj["data"]["user_id"])
|
||||
url = 'https://graph.facebook.com/v2.6/' + userid
|
||||
params = {'access_token': self.access_token}
|
||||
rsp = self.do_get(url, params)
|
||||
print(rsp)
|
||||
except:
|
||||
pass
|
||||
"""
|
||||
|
||||
|
||||
def get_oauth_apps():
|
||||
applications = BaseOauthManager.__subclasses__()
|
||||
|
||||
Reference in New Issue
Block a user