python - 如何从views.py django将第三方访问令牌存储到我的个人资料模型中
问题描述
我正在尝试将会话 ID 和访问令牌从第三方网站的 API 存储到我的用户配置文件中,我已经尝试了几天并进行了搜索,但我找不到这样的东西
我试图导入配置文件实例,以便我可以将数据保存到用户配置文件实例,但我不知道如何,这是我的代码
#views.py
from bs4 import BeautifulSoup
import xml.etree.ElementTree as ET
from django.contrib.auth.decorators import login_required
import urllib.parse
from django.views.generic import View
from users.models import Profile
from django.contrib.auth.models import User
def profile_view(request):
RuName= 'driss_aitkassi-drissait-crm-SB-ijuzzy'
r= {
'RuName': RuName
}
response = api.execute('GetSessionID', r)
print(response)
res =response.text
tree= ET.fromstring(res)
#here is my session id from the website's api
for node in tree.iter('{urn:ebay:apis:eBLBaseComponents}GetSessionIDResponse'):
SessionID= node.find('{urn:ebay:apis:eBLBaseComponents}SessionID').text
#i tried this :
s=Profile(session_id=SessionID)
s.save()
# and also tried this
# and also this:
Profile.objects.update(session_id=SessionID)
Profile.objects.model.save()
这是 Models.py 文件:
from django.db import models
from django.contrib.auth.models import User
from django.db.models.signals import post_save
from django.dispatch import receiver
class Profile(models.Model):
user = models.OneToOneField(User,related_name='profile' , on_delete=models.CASCADE)
token = models.TextField(max_length=500, blank=True)
session_id=models.TextField( max_length=500, blank=True)
def __str__(self):
return self.user.username
@receiver(post_save, sender=User)
def create_user_profile(sender, instance, created, **kwargs):
if created:
Profile.objects.create(user=instance)
请帮我解决这个问题,或者只是指出我正确的方向谢谢
解决方案
推荐阅读
- java - SLF4J-Logback : 基于日志级别的多种模式
- laravel - 如何在laravel中将收藏作为excel文件发送
- ios - 在 Swift 4 中将 Facebook 连接到应用程序委托
- node.js - 如何删除 MongoDB 用户模式中的任务引用
- swift - Swift 中的多视图控制器导航
- javascript - 使用相同的随机索引将值加载到两个数组中,数组的值不同
- owasp - Owasp Zap:蜘蛛扫描停止在 99%
- android - 聚类 Android GoogleMap 很慢
- arrays - 为什么返回的打字稿数组显示为'[object Object]'而不是ngFor的Iterable?
- abap - 材料质量管理视图(使用 BAPI/功能模块的检查设置)