Sen Form's sourcecode here
Form
bir yöntem uygulamak tanımlar denetleme bunun daha iyi bir kavrayışa elde edebilirsiniz . Eğer (Seq[FormError]
için) böyle bir şey yapabileceğini, Yani
:
eventForm("name").errors.foreach { error =>
<div>@error.message</div>
}
Ya (için Option[FormError]
)
eventForm("name").error.map { error =>
<div>@error.message</div>
}
Ve Field
bir Seq[FormError]
döndüren bir errors
üyesi var Ya da, Form
errors
:
Ve belirli bir anahtarın tüm hatalarını alın. Bu (Seq[FormError]
için) gibi: (Option[FormError]
için)
eventForm.errors("name").foreach { error =>
<div>@error.message</div>
}
Yoksa daha fazla ayrıntı istiyorsanız
eventForm.error("name").map { error =>
<div>@error.message</div>
}
, kaynak kodunu kontrol edin. İyi yazılmış ve iyi yorumlanmış.
Şerefe!
DÜZENLEME: As
biesior yorumladı: yürütme muhtemelen etmek zorunda gidiyoruz eksiksiz olması için here
i18n dışarı nasıl çalıştığını kontrol etmek zorunda farklı dillerle insan okunabilir güzel mesajları göstermek için I18N ile anlaşma. Her şeyin işe yaraması hiç de zor değil. documentation'u okuduktan sonra, kendinize biraz uydurulmuş bulabilirsiniz. Sana biraz itme yapacağım.Bir messages
dosyasını conf
klasörüne ekleyin ve içeriğini here'dan kopyalayabilirsiniz. Bu şekilde varsayılan mesajlar üzerinde daha fazla kontrole sahip olacaksınız. Örneğin
eventForm.errors("name").foreach { error =>
<div>@Messages(error.message, error.args: _*)</div>
}
error.message
error.invalid
olsaydı mesajı daha önce conf/messages
dosyasında Invalid value
tanımlanan görünür: Şimdi, görünümde, böyle bir şey yapmak mümkün olmalıdır. args
, hata iletinizin işleyebileceği bazı bağımsız değişkenleri tanımlar. Örneğin, bir error.min
ile çalışıyorsanız, gereken en düşük değer arg
olabilir. Mesajınızda, sadece argümanınızın sırasının olduğu {n}
modelini izlemeniz yeterlidir.
error.futureBirthday=Are you sure you're born in the future? Oowww hay, we got ourselves a time traveler!
Ve o kod (sadece bir satır bunun hissini göstermek gibi controller içerisinde Formunuzu kontrol edebilir: Elbette
, böyle kendi mesajları tanımlamak mümkün olacaktır
"year" -> number.verifying("error.furtureBirthday", number <= 2012) // 2012 being the current year
Dilleri etrafta oynamak istiyorsanız, belgeleri takip etmeniz yeterlidir.
Tekrar alkış! Tabii
Sadece ucu, insan okunabilir mesaj görüntülemek için bunu 'yerine'
Yeap, I18N – wleao
Yani ben aslında oyun kullanmayı scala öğrenmek gerekiyor galiba başka hikaye değildir