VTL'de bir dizi nasıl oluşturulur ve diziye içerikler nasıl eklenir? Ayrıca dizinin içeriğini indeksle nasıl alırsınız?Hız Şablonu Dilindeki bir dizi aracılığıyla oluşturma ve yineleme
cevap
VTL'de bir dizi oluşturmadım, ancak dizileri VTL bağlamına geçirmedim ve bunları kullandım. VTL olarak, dizine göre dizi içeriğini alamıyor, sadece örnek olarak bu kod benim Dinamik SQL üretimi VTL Komut kopyalanır, foreach kullanın:
#foreach($col in $Columns) SUM($col.DBColumn) AS ''$col.Name''#if($velocityCount!=$Columns.Count), #end #end
Bu nedenle, biz de 2D diziler olamaz. Bir satırda 2 nesne saklamak için bir diziye ihtiyaç duyduğumda, yeni bir sınıf tanımlamak ve bu sınıftaki nesneleri tek boyutlu diziye koymak için geçici bir çözüm kullandım.
Apache Velocity User Guide göre, atamaların sağ taraf türünde olabilir
- Değişken referans
- Liste öğesi
- Dize değişmezi
- Emlak Referans
- Yöntem referans
- sayısı değişmez
- Arr ayList
- Sen gibi bir ifade ile, bir Apache Velocity şablonunda, bir dizi için tüm ihtiyaçlarını tatmin edecek boş bir liste oluşturabilir
Harita:
#set($foo = [])
veya değerleri başlatılamıyor:
#set($foo = [42, "a string", 21, $myVar])
sonra, Java kullanarak elemanları add yöntemi:
$foo.add(53);
$foo.add("another string");
Ancak listeye bir öğe eklediğinizde, liste türü için Java .add() yönteminin bir boolean değeri döndürdüğünden dikkatli olun; örneğin, hız, "true" veya "false" temel alınarak yazdırılır. "add" işlevinin sonucu.
<span>$foo[1]</span>
İfade üst tarafında gösterilecek:
#set($bar = $foo.add(42))
Dizin numaralarını kullanarak listenin elemanlarını erişebilirsiniz:
Basit çalışma etrafında bir değişkene eklenti işlevinin sonucu atayan metin "bir dize" ile bir açıklık. Bununla birlikte, bir listenin öğelerine erişmenin en güvenli yolu foreach döngülerini kullanmaktır. Bir diziye bir öğe koyarak
#set($array = [])
da kolaydır: Bir dizi yaratmak
kolay bir dizi sizin Hız versiyonundan bağlıdır dan
$array.add(23)
unsurunu alınıyor. Hız 1'de .6
$array.get($index)
Velocity 1.7 beri klasik formu kullanarak kullanmalıdır:
$array[$index]
- 1. Dize Hız Şablonu nasıl kullanılır?
- 2. Hız şablonunda nesne oluşturma
- 3. Freemarker şablonu içinde liste oluşturma
- 4. Netlogo: Ajan seti üzerinde yineleme ve değişken hız ayarlaması
- 5. Program aracılığıyla RadioButtons oluşturma
- 6. Dinamik bir dizi oluşturma
- 7. Şablonu TextTransform.exe aracılığıyla çalıştırırken $ (SolutionDir) kullanma
- 8. Git dilindeki gözetmen deseni
- 9. IN ve = JPA sorgu dilindeki işleç
- 10. Bir XDocument Düğümü aracılığıyla yineleme nasıl yapılır
- 11. JSTL kullanarak bir dizi dizi ArrayL yineleme nasıl?
- 12. Yineleyicileri kullanarak bir dizi üzerinde yineleme
- 13. ng-yineleme döngüsü aracılığıyla nesne düzgün çalışmıyor
- 14. balık: Bir dizi/liste üzerinde yineleme
- 15. android çevirici ve dizi bağdaştırıcısı program aracılığıyla
- 16. SwiftMailer ile Twind Şablonu Oluşturma
- 17. Python'da dinamik bir dizi oluşturma
- 18. Bir yineleyici oluşturma ve çeşitli yineleme kaynakları arasından seçim yapın.
- 19. Sabit bir dizi dizgi oluşturma
- 20. Dizi üyeleriyle bir model oluşturma
- 21. AngularJS ng-yineleme tablosu oluşturma
- 22. WebRTC DataChannels Hız Sorunu
- 23. PHP çok boyutlu bir dizi aracılığıyla döngü ve değerleri değiştirin
- 24. yineleme Python
- 25. Swift: Hız için ayarlayın Hız
- 26. Kayıt Defteri Alt Klasörleri aracılığıyla yineleme
- 27. Dizi değerleriyle dize oluşturma
- 28. etkin numpy dizi oluşturma
- 29. Scala en iyi yolu: topluluğu üzerinde yineleme ve burada Dizi
- 30. İç içe geçmiş nesneler aracılığıyla yineleme JS
Not olsa o $ foo.add (53); Belgedeki 'doğru' veya 'yanlış' ifadesini verir. Bunu önlemek için bir #if içine sarmak gerekir. – sproketboy
Doğru veya yanlış görüntü oluşturma işlemi, yanıtta zaten yer aldı. –
Oh evet üzgünüm. Henüz farkına vardım. Ekleme yöntemini void döndüren dizin parametresiyle kullanabilirsiniz. – sproketboy