我的名字是omar。我正在研究一個使用SynapsePay API進行貨幣交易的django項目。我遇到了一個問題,我有兩個相同對象(用戶)的實例。 Django在django應用程序中創建新用戶時使用'User'對象。當在其API中創建新用戶時,Synapse使用「用戶」對象。當我嘗試使用SYnapse api時,我開始得到相同變量的衝突用法。SynapsePay與Django用戶衝突的實例
在import語句中,當我從Synapse Api導入用戶時,我將用戶的實例保存爲SynapseUser,這就是我用來與應用程序交互的東西。
有些部分的api是我無法控制的,它使用Api中的'User'對象,它抓取錯誤的對象或試圖抓取不存在於正在傳遞的鍵中的鍵。
這裏是所有的代碼,我已經和我試圖讓錯誤...
下面的代碼就是抓住形式的內容及測試用API銀行authroization ..
Here is a link to the api github samples.md file
這裏是views.py文件:
import os
from synapse_pay_rest import Client
from synapse_pay_rest import User as SynapseUser
from synapse_pay_rest.models.nodes import AchUsNode
def linkBankLogin(request, form):
currentUser = loggedInUser(request)
cd = form.cleaned_data
bank_name = cd['bank']
username = cd['username']
password = cd['password']
required = {
'bank_name':'wellsfargo',
'username':'omarjandali',
'password':'123123asd'
}
ach_us = AchUsNode.create_via_bank_login(SynapseUser, **required)
ach_us.mfa_verified
這裏是我得到的錯誤,當用戶提交林肯克帳戶形式:
AttributeError at /link_account/
type object 'User' has no attribute 'client'
Request Method: POST
Request URL: http://127.0.0.1:8000/link_account/
Django Version: 1.11.5
Exception Type: AttributeError
Exception Value:
type object 'User' has no attribute 'client'
Exception Location: /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/synapse_pay_rest/models/nodes/ach_us_node.py in create_via_bank_login, line 39
create_via_bank_login是API中創建的內部的方法和不是我可以改變。我怎樣才能得到它搶SynapseUser
** **更新
下面的代碼是什麼是使用id來查找用戶:
user = User.by_id(client, '...4dc1')
這樣我就可以這樣做這樣的:
synapseUser = SynapseUser.by_id(client, '...4dc1')
,因爲我只是在上面返回一個創建的用戶信息
工作添加的代碼0然後代替:
ach_us = AchUsNode.create_via_bank_login(SynapseUser, **required)
我可以使用:
ach_us = AchUsNode.create_via_bank_login(synapseUser, **required)
**續更新**
我有下面的代碼來執行我想要的東西整合:
def searchUserSynapse(request):
currentUser = loggedInUser(request)
currentProfile = Profile.objects.get(user = currentUser)
synapse_id = currentProfile.synapse_id
user = SynapseUser.by_id(clients, str(synapse_id))
response = user.json
print(response)
return user
def linkBankLogin(request, form):
currentUser = loggedInUser(request)
cd = form.cleaned_data
bank_name = cd['bank']
username = cd['username']
password = cd['password']
required = {
'bank_name':'wellsfargo',
'username':'omarjandali',
'password':'123123asd'
}
response = searchUserSynapse(request)
ach_us = AchUsNode.create_via_bank_login(response, **required)
ach_us.mfa_verified
並且新的錯誤消息如下:
BadRequestError at /link_account/
No exception message supplied
Request Method: POST
Request URL: http://127.0.0.1:8000/link_account/
Django Version: 1.11.5
Exception Type: BadRequestError
Exception Location:
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/synapse_pay_rest/http_client.py in parse_response, line 86
我怎樣才能找出請求有錯誤?
如果我的回答幫助你解決了你的問題,你可以放棄並接受它。 – rawbeans