python - SynapsePay & Django conflicting instances of User issue -


my name omar. working on django project using synapsepay api monetary transactions. getting issue have 2 instances of same object(user). django uses 'user' object when new users created within django application. synapse uses 'user' objects when new user created within api. when try use synapse api, starting conflicting uses of same variable.

in import statements, when imported user synapse api, saved instance of user synapseuser , using interact application.

there parts of api not controllable me use 'user' object within api , grabbing wrong object or trying grab key doesnt exist in key being passed.

here code have , error trying get...

the following code grab forms content , test bank authroization api..

here link api github samples.md file

here views.py file:

import os synapse_pay_rest import client synapse_pay_rest import user synapseuser 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 

here error getting when user submits linking account form:

attributeerror @ /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 internal method created within api , not can change. how can grab synapseuser

** update **

the following code used user id:

user = user.by_id(client, '...4dc1') 

so can this:

synapseuser = synapseuser.by_id(client, '...4dc1') 

because code added above worked in returning created users information

and instead of:

ach_us = achusnode.create_via_bank_login(synapseuser, **required) 

i can use:

ach_us = achusnode.create_via_bank_login(synapseuser, **required) 

** continued update **

i have following code perform wanted integrate:

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 

and new error message following:

badrequesterror @ /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 

how can find out request had error??

you need pass instance of class synapseuser, not class itself.

the line:

ach_us = achusnode.create_via_bank_login(synapseuser, **required) 

should be:

ach_us = achusnode.create_via_bank_login(user, **required) 

where user of type synapseuser

so need fetch synapseuser django user beforehand:

user = synapseuser.by_id(client, synapse_user_id) 

you need create method synapse_user_id django user (in case currentuser)

i recommend creating userprofile class one-to-one relationship user can store , other information.

see this post example of how set up.


Comments

Popular posts from this blog

angular - Ionic slides - dynamically add slides before and after -

minify - Minimizing css files -

Add a dynamic header in angular 2 http provider -