在我看来,我正在运行一个查询,该查询根据之前传递的 kwargs 提取信息。
示例 paypaladaptive debug.request 条目
{"returnUrl": "http://localhost:5000/paypal/return/pre/30/75f946df1bef45598cd42c45ff9e5e1c/", "maxTotalAmountOfAllPayments": "100.00", "maxNumberOfPaymentsPerPeriod": 1, "startingDate": "2012-03-30T07:59:09.447420", "maxNumberOfPayments": 1, "currencyCode": "USD", "endingDate": "2012-06-28T12:59:09.447158", "project": 585, "ipnNotificationUrl": "http://localhost:5000/paypal/ipn/30/75f946df1bef45598cd42c45ff9e5e1c/", "cancelUrl": "http://localhost:5000/paypal/cancel/pre/30/", "pinType": "NOT_REQUIRED", "requestEnvelope": {"errorLanguage": "en_US"}}
from django.utils import simplejson as json
from paypaladaptive.models import Preapproval
@login_required
@require_GET
def cancel_preapproval_bulk(request, project_id):
preapprovals_list = []
preapprovals = Preapproval.objects.all().exclude(preapproval_key=None).exclude(status='canceled').exclude(status='used')
for obj in preapprovals:
json_object = json.loads(obj.debug_request)
if json_object['project'] == project_id:
preapprovals_list.append(obj)
print preapprovals_list
当通过 django shell 运行这个执行时,你会得到一个根据传递的 args 生成的列表,即项目 ID。
在普通的 django 视图中运行它时,它返回一个空列表......
知道为什么吗?