Neden GET blocks ihtiyacımız var ve nasıl çalışıyorlar?
Bir ön uç geliştirdiğinizde, kaçınılmaz olarak arka uçta farklı BP'ler çalıştırmanız gerekecektir. Bir BP'yi çalıştırmak için uç noktasını aramanız gerekir. Bunu yapmak için, AppMaster her uç nokta için bir Sunucu İsteği bloğu oluşturur. Bu bloklar, ilişkili uç nokta ile aynı giriş ve çıkış alanlarına sahiptir ve onu başlatmanın bir yolu olarak hizmet eder.
GET blokları, REST API ilkelerine göre bazı verileri almalıdır. Çoğu zaman, GET blokları veritabanındaki modelden veri alır (tümü veya belirli kriterlere göre).
Tüm Sunucu İsteği blokları gibi, her GET bloğu kendi uç noktasına bağlıdır. Bitiş noktasının URL'si, blokların adında görüntülenir.
AppMaster'ın temel uç noktaları otomatik olarak oluşturduğunu unutmayın. Ancak onlar için BP'lerinizi ve uç noktalarınızı ve dolayısıyla Sunucu İsteği bloklarınızı da oluşturabilirsiniz.
GET block giriş ve çıkış alanları
Giriş
- Endpoint ID – bloğun hangi uç noktaya erişmesi gerektiğini belirler. Bu alan otomatik olarak ayarlanır;
- _offset – bloğun hangi kayıttan bilgi alacağını belirlemeye izin verir; tamsayı biçimi;
- _limit – bloğun yüklediği kayıt sayısı. Varsayılan değer 25'tir, bir seferde maksimum değer 500'dür; tamsayı biçimi;
- _sort_order – bu alan için iki değer uygundur: asc – doğrudan sıralama düzeni ve desc – ters sıralama; dize biçimi;
- _sort_by – listenin veri modelinin hangi alanına göre sıralanacağını tanımlar; dize biçimi;
- Ids – kayıt kimliklerinin listesi. Belirli bir kimliğe göre kayıt alınmasına izin verir; dizi tamsayı biçimi;
- _search – veri modelinde belirli bir değeri arayın; dize biçimi;
- _search_exact – tam eşleşme aramasını etkinleştirir/devre dışı bırakır; boole biçimi;
- _ search_in – belirli alanlara göre arama; dizi dize biçimi.
Aramayla ilişkili alanlara daha yakından bakalım.
_search – veri modeli boyunca eşleşmeleri arar ve değerin bulunduğu alandan bağımsız olarak bunları bulur.
Örneğin, _search alanını John olarak ayarlayalım. Veri modelinde, bir kayıt için ad alanının değeri John, diğeri için ise e-posta alanının değeri [email protected] ise, arama bu kayıtların her ikisini de bulur.
_search_exact – bu alanın etkinleştirilmesi, sonuçların sorguyla tamamen eşleşen kayıtları içereceği anlamına gelir.
Rica etmek | _search_exact | Sonuç |
John | False | John, Johny, [email protected] |
John | True | John |
_search_in – burada, aramanın yapılması gereken alanları ayarlayabilirsiniz. Örneğin, yalnızca adlara göre arama yapmak istiyorsak ve adın e-postanın bir parçası olduğu durumları dikkate almıyorsak, _arama_in öğesini kullanabilir ve yalnızca ad alanına göre arama yapabiliriz.
Veri modeli alanlarını ara
Bu alanlar, veri modeline göre arama yapmak için kullanılır. Bunlarla arama alanları arasındaki temel fark, yalnızca dize biçimini kabul eden aramadan farklı olarak farklı değerler alabilmeleridir.
Çıktı
- _success – arama sonuçları; boole biçimi;
- _httpcode – istek yanıt kodu; tamsayı biçimi;
- _error – hata metni; dize biçimi;
- Data – alınan kayıtlar; dizi modeli formatı;
- Count - alınan girişlerin sayısı; tamsayı biçimi.
_with alanı
İsteğin ilgili veri modellerine gittiği bloklarda görünür. İsteğin yapıldığı veri modelinden ve onunla ilişkili veri modellerinden veri almanızı sağlar.
Kitapların ve kategorilerinin bir listesini saklayan örnek bir uygulama kullanarak _with alanına bakalım.
İki veri modeli oluşturun: book ve category . book book_name alanını, category_name category ekliyoruz.
Aralarında bir bağlantı oluşturun. Bunu kategoriden kitaba çizelim ve bir kategori farklı kitaplara başvurabileceğinden has_many ile ilişkinin türünü belirleyelim.
Web uygulaması sekmesi altında, kitap ve kategori tablolarına veri yüklemeyi ayarlayın ve bu tablolara kayıt ekleyin. Bağlantılı veriler şu anda tablolarda görüntülenmiyor. Bunu düzeltmek için _with alanı gereklidir.
Bu alanı her tablo için Get block ayarlayın.
Şimdi uygulamamızı açalım ve sorgunun çalıştığından ve tabloda doğru verilerin göründüğünden emin olalım.