Skip to main content
Bir Twenty uygulamasının veri katmanı, uygulamanızın bir çalışma alanına eklediği veridir — bildirdiği yeni kayıt türleri, mevcut nesnelere eklediği sütunlar ve bu kayıtların birbirine nasıl bağlandığı.

Bu bölümde

Nesneler

defineObject — kendi alanlarına sahip yeni kayıt türleri bildirin.

Nesneleri Genişletme

defineField — standart nesnelere veya diğer uygulamaların nesnelerine alanlar ekleyin.

İlişkiler

Nesneler arasında çift yönlü MANY_TO_ONE / ONE_TO_MANY bağlantıları.

Varlıklara genel bakış

SDK bunları derleme zamanında AST analiziyle algılar, bu yüzden dosya organizasyonu size kalmıştır — kullanılan gelenek src/objects/, src/fields/ ve src/indexes/ dizinleridir. Kararlı universalIdentifier UUID’leri, dağıtımlar arasında her şeyi birbirine bağlar.

Dizinler (İsteğe bağlı)

Uygulamalar, yinelenen sorguları hızlı tutmak için nesneleriyle birlikte dizinler sunabilir. En yaygın durum, sık okuduğunuz bir durum ya da yabancı anahtar sütunudur.
src/indexes/post-card-status.index.ts

Benzersiz dizinler

defineIndex, hem tek sütunlu hem çok sütunlu benzersizlik için isUnique: true kabul eder. Önerilen yöntem budur — defineField({ isUnique: true }) kullanımdan kaldırılmıştır ve gelecekteki bir sürümde kaldırılacaktır.

Diğer kısıtlamalar

  • Kısmi WHERE koşulları yönetici kontrolü altında kalır — uygulamalar bunları tanımlayamaz.
  • Her nesne, 10 özel dizin ile sınırlandırılmıştır (framework’ün kendi dizinleri buna dahil değildir).
fields dizisini, Postgres’in kullanması gereken şekilde sıralayın — en soldaki sütun ilk, bir telefon rehberinde olduğu gibi. Dizinler bedava değildir: tabloya yapılan her yazma işlemi bunları günceller. Bir dizini yalnızca ona ihtiyaç duyan bir sorgunuz olduğunda ekleyin.
Application Config veya Roles & Permissions mı arıyorsunuz? Bunlar, ekledikleri verilerden çok uygulamanın kendisini tanımlar — Config altında bulunurlar. Connections (Linear, GitHub, Slack OAuth) mı arıyorsunuz? Bunlar, mantık fonksiyonları içinden çağrılmak için vardır ve Logic altında bulunurlar.