Uygulamalar için bir veritabanı tasarlama, tablolar arasında ilişkiler oluşturmadan nadiren tamamlanır. AppMaster veritabanı düzenleyicisi, böyle bir ilişkiyi tek bir basit hareketle kurmanıza izin verir. Tablolar arasında bir bağlantı çizgisi çizmeniz ve ardından ilişkinin türünü (bire bir, birden çoğa, çoktan çoğa) ve gerekirse alanların adlarını seçmeniz yeterlidir. Peki ya tablonun kendisine gönderme yapması gerekiyorsa?
Belirli bir kayıt günlüğü tutmanın gerekli olduğu durumu analiz edelim. Aynı zamanda, kayıtlar kesinlikle bir zincir halinde oluşturulacak şekilde düzenlenmiştir. Her giriş, önceki ve sonraki girişle bağlantılı olmalıdır (elbette ilk ve son giriş hariç). Böylece, her bir kayıt için tüm zincir takip edilebilir ve sistem yetkisiz değişikliklere karşı ek koruma alır.
Veri tabanı tasarımı
İlk olarak, veritabanı tasarımcısında modelin kendisini oluşturmamız gerekiyor. Adını Journal koyalım ve bir metin alanı ekleyelim, record .
Bir sonraki adım bir bağlantı oluşturmaktır. Bunu yapmak için tuval üzerinde herhangi bir yeri sağ tıklayın ve Create relation öğesini seçin.
Bir sonraki adım, bağlantıyı kurmaktır. Bunu yapmak için Source ve Target ile aynı modeli seçmeniz (bu durumda Journal ), alan adlarını ( next ve previous ) ve bağlantı türünü ( has_one ) ayarlamanız gerekir.
Kendinden referanslı tablo kurulumu tamamlandı. Ön uç tasarımı ve iş süreçlerini oluşturmaya başlayabilirsiniz.
İş süreci oluşturma
Günlüğe yeni girişler eklemek için bir arka uç iş süreci oluşturalım. Yeni girişin metnini bir giriş parametresi olarak alacaktır. Bu, veritabanını yeni girişle ilişkilendirmek için en son girişi arayacak. Arama için, _Limit = 1 ayarını yapabilirsiniz (çünkü yalnızca son bir kayıt gereklidir), bu, varsayılan olarak, kayıtlar ID'ye göre sıralanacağından ve veri tabanına eklenme sırasına göre yayınlanacağından başlayarak, yeterli olacaktır. son kayıt
Aramanın sonucu, bir öğeden oluşan bir dizi olacaktır. index 0 Array Element bloğunu kullanarak çıkarmamız ve yeni bir günlük girişi oluşturmamız gerekiyor ( Make Journal ). Son adım, yalnızca veritabanına yazmak ( DB: Create Journal ) ve iş sürecini tamamlamaktır.
Bu iş süreci, yeni veritabanı kayıtları oluşturmak için varsayılan uç nokta için kullanılabilir.
Ön uç tasarımı
Bir web uygulamasının ön yüzü için sayfaya üç öğe eklemek yeterlidir.
- Yeni girişin içeriğini girmek için metin alanı
- Giriş eklemek için düğme
- Tüm girişleri görüntülemek için tablo.
"ADD Journal Record" butonu için ayrıca basit bir iş süreci oluşturmanız gerekiyor. Düğmeye tıklandığında, giriş alanındaki metin uç noktaya gönderilerek yeni kayıtlar oluşturulmalı ve son işlem olarak tablonun içeriğini güncellemek için başka bir düğmeye tıklanmalıdır.
Tablonun kendisi için de iş süreçlerini kurmaya değer, ancak bu derste bunun üzerinde durmayacağız. Gerekli tüm bilgiler tabloları kurma dersinde bulunabilir. Yalnızca veri alırken, ilgili tablolardan veri almak için _with parametresini belirtmeniz gerektiğini belirtmekte fayda var (bizim durumumuzda tablonun kendisiyle ilişkili olmasına rağmen).
Uygulamayı yayınlayabilir, birkaç giriş ekleyebilir ve her şeyin doğru çalıştığını doğrulayabiliriz. Her giriş gerçekten aynı tablodaki girişlerle ilgilidir. Örneğin, ID 3'e sahip bir giriş için, önceki girişe (ID 2) ve sonraki girişe (ID 4) bir bağlantı vardır.