Bugün bu garip sonucu karşınıza çıkartarak Grails 2.0.4'te JSON olarak bir nesne listesi oluşturmaya çalışıyorum. (Biliyorum, sormaktan pişman olacağım. burnumun altında bir şey yüzünden ... güncelleştirildi 5/26, benim tahminim doğru, aşağıya bakın :-))Koşullu işleçle Grails'de 'JSON olarak düzenleme' doğru şekilde görüntülenmiyor
Bu iyi çalışıyor; JSON
def products = [] //ArrayList of Product objects from service
def model = (products) ? [products:products] : [products:"No products found"]
render model as JSON
..Bu yüzden ... tarayıcıda şekilde oluşturuluyor; neden model
iş olmadan bu kısaltılmış versiyonu?
def products = []
render ((products) ? [products:products] : [products:"No products found"]) as JSON
Yukarıdaki kod kaynaklanan JSON tek bir metin satırı olarak çıktı, bu yüzden o kadar as JSON
açmıyor şüpheli, ancak doğru parantez, bu yüzden anlaşma nedir?
[ 'ürünler': [com.test.domain.Product: null, com.test.domain.Product ...]
Kahretsin ı) (işlemek 'hatırlatıyorum söylemek parantez fazladan bir dizi gerekir nedeni budur' bile farkında olmadan, thx, senin çözümün bu kullanarak elemanları ile gidiş sona erdi, şey biraz daha kısa ve içerik türünü iki kez belirtmekten kaçınıyor: "render (contentType:" text/json ") {[products: (products?:" Ürün bulunamadı ")]}' – raffian
Bu da işe yarayacak: render ((ürünler) ? [ürünler: ürünler]: [ürünler: "Ürün bulunamadı"]) JSON olarak) –
@JamesKleeh Ace delikte, güzel! .. ve tam olarak aradığım şey! – raffian