✨Discover storytelling in the AI age with Pixar's Matthew Luhn at Sanity Connect, May 8th—register now

What Data Type Can I Use For a Boolean Value Or Null?

9 replies
Last updated: Sep 29, 2022
Just a super quick question, what data type can I use for a boolean value or null?
Sep 29, 2022, 7:26 PM
There is a boolean type! But dealing with the
null
part might be complicated. If the field has never been set, it just won't exist in the data. It won't be explicitly set to
null
.
Sep 29, 2022, 7:28 PM
ok - the data is coming in from next-auth - I actually dont need the field
Sep 29, 2022, 7:30 PM
I have another quick question, is it possible to extend a schema when using it? For instance I want to refer to product variant, but want to add additional fields such as quantity
Sep 29, 2022, 7:31 PM
or do I just build a new schema with these addtional fields?
Sep 29, 2022, 7:31 PM
You can wrap it in an object and add an additional field, but it may look different than you're expecting. This:
{
      name: 'compoundObject',
      type: 'object',
      fields: [
        {
          name: 'section',
          type: 'section',//section is another object with a string field
        },
        {
          name: 'addedField',
          type: 'string',
        },
      ],
    },
Gives this:
Sep 29, 2022, 7:35 PM
ooo ok great thanks!
Sep 29, 2022, 7:36 PM
hmmm I just tried to add the fields as you suggested:
    {
      title: "Cart Items",
      name: "cartItems",
      type: "array",
      of: [
        {
          title: "Product Variants Cart",
          type: "productVariant",
        },
        {
          name: "name",
          type: "string",
        },
        {
          name: "amount",
          type: "number",
        },
      ],
    },
Sep 29, 2022, 7:46 PM
but I’m still getting an error for those fields in sanity
Sep 29, 2022, 7:46 PM
It looks like you've put those in an array, which won't work quite the same way.
Sep 29, 2022, 7:52 PM

Sanity– build remarkable experiences at scale

Sanity is a modern headless CMS that treats content as data to power your digital business. Free to get started, and pay-as-you-go on all plans.

Was this answer helpful?