尝试稍微清理一下这个问题,一切都在条带连接回调函数中工作,我可以在我的用户中保存条带用户ID,我喜欢在相关的配置文件模型中保存条带用户ID但不知道如何获取来自user = request.user的那个模型。任何建议都会有很大的帮助。
class CompanyUser(models.Model):
email = models.OneToOneField(CustomUser, on_delete=models.CASCADE)
company_name = models.CharField(max_length=50, null=True, blank=True)
business_owner = models.CharField(max_length=50, null=True, blank=True)
phone_regex = RegexValidator(regex=r'^\+?1?\d{9,15}$', message="Phone number must be entered in the format: '+999999999'. Up to 15 digits allowed.")
phone_number = models.CharField(validators=[phone_regex], max_length=15, blank=True) # validators should be a list
stripe_user_id = models.CharField(max_length=120, null=True, blank=True)
def stripe_callback(request):
client_secret = STRIPE_API_KEY
user = request.user
code = request.GET.get('code', '')
data = {
'grant_type': 'authorization_code',
'client_secret': 'sk_test_5SLLtqWFDTqzdbYmBz4XZpSX',
'client_id': 'ca_ANdfv3rlKvpOU3rDglk6qoXuBYqGYiq5',
'code': code,
}
url = 'https://connect.stripe.com/oauth/token'
resp= requests.post(url, params=data)
stripe_payload = json.loads(resp.text)
stripe_user_id = stripe_payload['stripe_user_id']
user.stripe_user_id = stripe_user_id
user.save()
答案 0 :(得分:0)
这样做有用,所以可以帮助其他人,感谢你在评论中的dirkgroten。
def stripe_callback(request):
client_secret = STRIPE_API_KEY
# the temporary code returned from stripe
user = request.user.companyuser
code = request.GET.get('code', '')
# identify what we are going to ask for from stripe
data = {
'grant_type': 'authorization_code',
'client_secret': 'sk_test_secretstuff',
'client_id': 'ca_secretstuff',
'code': code,
}
# Get the access_token using the code provided
url = 'https://connect.stripe.com/oauth/token'
resp= requests.post(url, params=data)
stripe_payload = json.loads(resp.text)
print(stripe_payload)
stripe_user_id = stripe_payload['stripe_user_id']
user.stripe_user_id = stripe_user_id
print(stripe_user_id)
user.save()