查询字典{}为空

时间:2020-06-08 13:12:04

标签: python view django-rest-framework

我尝试接收在管理面板中创建的数据帐户名。但是,当我尝试从请求中解析数据时,由于查询dict帐户名称为空,因此收到错误wit 404。

class OrderViewSet(viewsets.ViewSet):
    client = None

    def account_check(func):
        def wrapper(*args, **kwargs):
            params = args[1].query_params
            name = params.get('account')
            account = get_object_or_404(Account.objects.all(), name=name)
            return func(*args, **kwargs)
        return wrapper

    @account_check
    def create(self, request):
        pre_serializer = OrderSerializer(data=request.data)

这是我的model.py和url.py代码:

router = DefaultRouter()
router.register(r'orders', OrderViewSet, basename='orders')
urlpatterns = router.urls
class Account(models.Model):
    name = models.CharField(max_length=100, unique=True)
    api_key = models.CharField(max_length=200)
    api_secret = models.CharField(max_length=200)

    class Meta:
        verbose_name = "Account"
        verbose_name_plural = "Accounts"

    def __str__(self):
        return self.name

在包装器中,我收到两个对象1-Request obj和2-我的views.OrderViewSet。

当我检查模型中的数据时,我发现查询集中存在该帐户。

0 个答案:

没有答案