Javascript GraphQL无法返回';空';对于';不可为空的字段'&书信电报;类型字段>;

Javascript GraphQL无法返回';空';对于';不可为空的字段'&书信电报;类型字段>;,javascript,mongoose,graphql,apollo-server,Javascript,Mongoose,Graphql,Apollo Server,我理解错误的意思,并尝试调试所有可能的解决方案 在我的案例中,确切的错误是: { "errors": [ { "message": "Cannot return null for non-nullable field Order.total.", "locations": [ { "line": 5, &q

我理解错误的意思,并尝试调试所有可能的解决方案

在我的案例中,确切的错误是:

{
  "errors": [
    {
      "message": "Cannot return null for non-nullable field Order.total.",
      "locations": [
        {
          "line": 5,
          "column": 5
        }
      ],
      "path": [
        "createOrder",
        "total"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "stacktrace": [
            "Error: Cannot return null for non-nullable field Order.total.",
在我的类型定义中,我将Order.total字段设置为空,但问题仍然存在。 订单类型:

# Mutation
createOrder(orderInput: OrderInput!): Order!
# Custom Input
input OrderInput {
        username: String!
        total: Float
        pizzas: [ID]!
        collectAt: String!
        createdAt: String!
}
创建顺序解析程序的设置与所有其他解析程序的设置完全相同,可以完美地工作。 创建订单解析程序:

createOrder: async (
        _,
        { orderInput: { username, total, pizzas, collectAt, createdAt } }
    ) => {
        try {
            // console.log(pizzas);
            const newOrder = Order({
                username,
                total,
                pizzas,
                collectAt,
                createdAt
            });

            const res = await newOrder.save();
            return res;
        } catch (err) {
            throw new Error("Caught An Error => " + err);
        }
    }
我知道有些人可能会问我在用什么ORM在这种情况下,我在用猫鼬。 以下是订单模型:

const orderSchema = new Schema({
    username: String,
    total: Number,
    pizzas: [
        {
            type: Schema.Types.ObjectId,
            ref: "pizzas"
        }
    ],
    collectAt: String,
    createdAt: String
});

提前感谢。

此问题指的是
类型订单
,而不是
输入订单输入
res
对象不包含有效的
总计