Dalam aplikasi saya, saya menggunakan Hasura untuk server graphql saya dan Apollo untuk klien. Saya memiliki skema postgres dengan tabel snake_case dan nama bidang, tetapi saya ingin memiliki kunci camelCases di objek tanggapan saya. Adakah cara yang diketahui untuk mencapai itu? Saya dapat melihat bahwa server apollo menawarkan fieldResolver di mana hal itu dapat dilakukan (Konversikan snake_case ke camelCase nama bidang di apollo-server-express), tetapi saya tidak menemukan opsi serupa untuk Hasura/ApolloClient.

-1
benams 22 Desember 2020, 22:14

3 jawaban

Jawaban Terbaik

Untuk mempersingkat cerita - saat ini, tidak ada solusi seperti itu untuk Hasura. Saran terbaik yang bisa saya dapatkan adalah mengganti nama nama kolom secara manual, satu per satu melalui konsol => bagian DATA => Ubah tab: masukkan deskripsi gambar di sini

benams 23 Desember 2020, 23:59

Adakah cara untuk mencapai itu?

Lihat alias GraphQL.

https://graphql.org/learn/queries/#aliases https://hasura.io/blog/customising-alias-graphql-fields-with-hasura/

Contoh:

# Query
query {
  users {
    id
    name: full_name
    email: email_addr
  }
}

# Response
{
  "data": {
    "users": [
      {
        "id": "3ea1352a-6654-444d-9357-62816ccbd2b3",
        "name": "Praveen",
        "email": "email@mydomain.com"
      }
    ]
  }
}
-1
jmdavalos 24 Desember 2020, 15:56

Anda dapat mengekspos kolom apa pun dengan nama berbeda di GraphQLAPI tanpa harus mengganti nama kolom itu sendiri... Anda dapat melakukannya di konsol hasura seperti pada gambar di bawah inimasukkan deskripsi gambar di sini

Ambassel 24 Desember 2020, 13:55