Bagikan melalui


Menggunakan pandangan dalam pembangun API Data

Tampilan dapat digunakan sebagai pengganti tabel di DAB. Tampilan dapat diekspos melalui titik akhir REST atau GraphQL dengan konfigurasi minimal.

Konfigurasi

Untuk mengekspos tampilan:

  • Atur source.type ke "view"
  • Atur source.object ke nama tampilan yang sepenuhnya memenuhi syarat
  • Tentukan key-fields untuk mengidentifikasi baris secara unik
  • Berikan perizinan menggunakan aksi "read" (dan "create", "update", "delete" secara opsional, jika tampilan dapat diperbarui)

Contoh CLI

dab add BookDetail \
  --source dbo.vw_books_details \
  --source.type "view" \
  --source.key-fields "id" \
  --permissions "anonymous:read"

Contoh konfigurasi

"BookDetail": {
  "source": {
    "type": "view",
    "object": "dbo.vw_books_details",
    "key-fields": [ "id" ]
  },
  "permissions": [
    {
      "role": "anonymous",
      "actions": [ "read" ]
    }
  ]
}

Dukungan REST

  • Mendukung semua kata kerja REST: GET, , POST, PUT, PATCHDELETE
  • Perilaku default identik dengan entitas yang didukung tabel
  • Operasi berhasil hanya jika tampilan dapat diperbarui dan izin yang sesuai diatur

Contoh permintaan

GET /api/BookDetail/42

Mengembalikan baris dari vw_books_details dengan id = 42.

Dukungan GraphQL

  • Tampilan ditampilkan sebagai tipe GraphQL
  • Kueri selalu didukung
  • Mutasi hanya didukung jika tampilan dapat diperbarui
  • Mengikuti struktur skema DAB GraphQL standar

Hak akses

  • Gunakan tindakan read untuk tampilan hanya-baca
  • Gunakan create, update, dan delete hanya jika tampilan dapat diperbarui

Keterbatasan

  • key-fields diperlukan
  • Tampilan tidak mendukung relasi
  • Penomoran halaman, pemfilteran, dan pengurutan didukung jika tampilan bersifat seperti tabel