postgresql 查询表中的多行时显示的是一个[object] [object],而不是实际数据,如何修复?

camsedfj  于 12个月前  发布在  PostgreSQL
关注(0)|答案(1)|浏览(116)

我有这样的疑问:

const {data, error} = await supabase  
        .from('profiles')
        .select(`
          *,
          station (
            station_name, user_id
          ),
          type (
            *
          )
        `)
        .eq('id', searchParams.id)

字符串
我已经可以看到数据了,但是,对于type,我只能看到:[ [Object], [Object], [Object] ]
这里的types可以有多行:
数据输出示例:

[
  {
    id: '2d6c72a1-175c-4c08-823e-10e35c0d1d7f',
    email: '[email protected]',
    full_name: 'Raven',
    `station: {
      station_name: 'Water Station 1',
      user_id: '2d6c72a1-175c-4c08-823e-10e35c0d1d7f'
    },
    type: [ [Object], [Object], [Object] ]
  }
]


这是我查询type时的示例数据:

const {data, error} = await supabase  
      .from('type')
      .select(`
        *,
        profiles(
          *
        )
      `)
      .eq('user_id', searchParams.id)


输出量:

[
  {
    id: 'c12c5e82-c569-48d9-ae25-4c68f0ac2935',
    name: 'Distilled Water',
    price: 20,
    user_id: '2d6c72a1-175c-4c08-823e-10e35c0d1d7f',
    profiles: {
      id: '2d6c72a1-175c-4c08-823e-10e35c0d1d7f',
      email: '[email protected]',
      full_name: 'Raven'
    }
  },
  {
    id: 'f6759420-8ae7-485f-99da-0f248a964d63',
    name: 'Mineral Water',
    price: 50,
    user_id: '2d6c72a1-175c-4c08-823e-10e35c0d1d7f',
    profiles: {
      id: '2d6c72a1-175c-4c08-823e-10e35c0d1d7f',
      email: '[email protected]',
      full_name: 'Raven'
    }
  },
  {
    id: '70e2e497-37b0-4294-a3b3-94bbd95c989a',
    name: 'Sparkling Water',
    price: 500,
    user_id: '2d6c72a1-175c-4c08-823e-10e35c0d1d7f',
    profiles: {
      id: '2d6c72a1-175c-4c08-823e-10e35c0d1d7f',
      email: '[email protected]',
      full_name: 'Raven'
    }
  }
]


Expected Data用于显示此数据的类型列表:

[
  {
    id: '2d6c72a1-175c-4c08-823e-10e35c0d1d7f',
    email: '[email protected]',
    full_name: 'Raven',
    station: {
      station_name: 'Water Station 1',
      user_id: '2d6c72a1-175c-4c08-823e-10e35c0d1d7f',
    },
    type: [
      {
        id: 'c12c5e82-c569-48d9-ae25-4c68f0ac2935',
        name: 'Distilled Water',
        price: 20,
      },
      {
        id: 'f6759420-8ae7-485f-99da-0f248a964d63',
        name: 'Mineral Water',
        price: 50,
      },
      {
        id: '70e2e497-37b0-4294-a3b3-94bbd95c989a',
        name: 'Sparkling Water',
        price: 500,
      },
    ],
  },
];

p8h8hvxi

p8h8hvxi1#

根据[Object] [Object]的响应,我假设您正在使用console.log()调试和可视化数据,对吗?
如果是这样的话,这就是为什么你会看到[Object]。Console.log截断数据以提高可读性,但这只是一个视觉上的东西,你的数据实际上是存在的。
如果你想看到完整的响应,你可以做一个快速的技巧,那就是将数据字符串化为格式化的JSON,通过执行以下操作:

console.log(JSON.stringify(data, null, 2))

字符串

相关问题