簡體   English   中英

Django-RQ + Braintree:提交解決

[英]Django-RQ + Braintree: Submit for settlement

我已經閱讀了這個stackoverflow的問答,但在我的情況下卻沒有解決。

在我的場景中,我使用出色的django-rq包將函數( submit_transaction_for_settlement(transaction_id) )推送到redis隊列。 此功能的工作是提交交易以進行結算。

在沙盒中,無論何時執行此函數,我都會不斷遇到相同的錯誤: AttributeError: type object 'Configuration' has no attribute 'environment'

我嘗試了agf關於instantiate a new gateway for each transaction函數中的instantiate a new gateway for each transaction 的建議 ,但是沒有用!

也許這與redis隊列的環境或worker環境有關?

def submit_transaction_for_settlement(transaction_id):
    from braintree import Configuration, BraintreeGateway

    config = Configuration(environment=settings.BRAINTREE_ENVIRONMENT, merchant_id=settings.BRAINTREE_MERCHANT_ID,
                                   public_key=settings.BRAINTREE_PUBLIC_KEY, private_key=settings.BRAINTREE_PRIVATE_KEY)
    gateway = BraintreeGateway(config=config)
    result = gateway.transaction.submit_for_settlement(transaction_id)

Ahrg!

在找到解決方案的幾分鍾后,我討厭回答問題的瞬間!

問題出在運行rqworker的命令中。 我用命令python manage.py rqworker --worker-class rq.SimpleWorker因為我有這個問題 ,因為我用Python 2.7版(或別的東西,造成這個問題)。 產生此問題的命令是python manage.py rqworker

現在升級到python 3.4,最后一個命令的作用就像一個吊飾! 因此,運行python manage.py rqworker ,並且沒有此類錯誤!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM