【问题标题】:Posting JSON boolean Django发布 JSON 布尔值 Django
【发布时间】:2019-04-26 06:43:34
【问题描述】:

我正在尝试发送一个包含如下布尔值的 POST 请求:

{
"is_manager": true
}

然后请求由 django-allauth 中的覆盖适配器处理:

from allauth.account.adapter import DefaultAccountAdapter

class CustomUserAccountAdapter(DefaultAccountAdapter):

    def save_user(self, request, user, form, commit=True):
        """
        Saves a new `User` instance using information provided in the
        signup form.
        """
        from allauth.account.utils import user_field

        user = super().save_user(request, user, form, False)
        user_field(user, 'is_manager', request.data.get('is_manager', False))
        user.save()
        return user

但我得到这个错误:

TypeError: 'bool' 对象不可下标

我尝试使用 json.loads 但此方法只接受字符串作为参数。我能做什么?

提前致谢。

【问题讨论】:

    标签: json django post


    【解决方案1】:

    发现了一个临时黑客:我可以发送"True",而不是发送true。这会得到正确处理。

    【讨论】:

      【解决方案2】:

      在 JSON 中添加布尔值是正确的。

      { "is_manager": True }
      

      【讨论】:

      • 我不这么认为
      猜你喜欢
      • 1970-01-01
      • 2018-07-03
      • 1970-01-01
      • 2016-10-22
      • 1970-01-01
      • 2012-01-06
      • 2017-04-08
      • 2015-08-03
      • 2014-11-30
      相关资源
      最近更新 更多