Ich brauche einige Methoden, die in einer Bibliothek definiert sind. In meinem Modul, ich habeWie kann auf eine Methodenbibliothek zugegriffen werden?
/mymodule/lib/mod.py
Und meine views.py
in /mymodule/views.py
In meinem mod.py
ich erklärt haben:
class ModClient(object):
"""REST client for Mod API"""
def __init__(self, client_id, secret, environment):
self.client_id = client_id
self.secret = secret
self.environment = environment
def _base_url(self):
base_url = ''
if self.environment == 'sandbox':
base_url = 'https://sandbox.mod.com'
elif self.environment == 'development':
base_url = 'https://development.mod.com'
elif self.environment == 'production':
base_url = 'https://production.mod.com'
return base_url
def _base_params(self):
params = {
'client_id': self.client_id,
'secret': self.secret
}
return params
def _parse_response(self, response):
result = response.json()
if response.status_code != 200:
raise ModClientException(message='HTTP status {}: {}'.format(response.status_code, result),
http_status=response.status_code,
error_type=result.get('error_type', None),
error_code=result.get('error_code', None))
return result
def get_accounts(self, access_token):
url = '{}/accounts/get'.format(self._base_url())
params = self._base_params()
params['access_token'] = access_token
response = requests.post(url, json=params)
return self._parse_response(response)
Wie ich meine Methode get_accounts
von meinem view.py
zugreifen unter der Annahme, dass beide im selben Modul sind?
Können Sie 'ModClient' in view.py instanziieren und dann' instance.get_accounts () 'aufrufen? –
JacobIRR
'mod.py',' view.py' klingt sehr nach zwei verschiedenen Modulen für mich! Sie meinen, sie sind im selben Paket ('mymodule.lib möglicherweise')? – schwobaseggl
ja, sorry, differente Pakete, 'views.py' befindet sich in'/mymodule/views.py' – MrMins