Validasi Form API Platform + Symfony

Nipe Setiawan Harefa
PayMyTea
Published in
2 min readApr 26, 2020

Hai teman-teman pembaca, kali ini aku akan lanjutkan tulisan di tahun 2018 tentang API Platform . Jika ditulisan sebelumnya kita bahas tentang CRUD, kali ini aku lanjutkan dengan pembahasan seputar validasi request(form) di API Platform.

Untuk melakukan validasi request, maka kita cukup menggunakan constraint bawaan dari symfony dengan menambahkan use Symfony\Component\Validator\Constraints as Assert diatas deklarasi class / entity, hasilnya kurang lebih seperti ini :

Jadi pada property $title kita tambahkan constraint NotBlank yang menandakan bahwa property title tidak boleh kosong. Selain NotBlank ada banyak constraint lainnya, selengkapnya bisa dilihat di https://symfony.com/doc/current/reference/constraints.

Lalu kita coba di swagger yang telah dibuat secara otomatis oleh API Platformnya bisa akses di http://localhost:8000/api . Dan kita pilih method POST untuk menambahkan data. Lalu isi dari pada title kita kosongkan atau bisa disi dengan "" , lalu klik Execute.

Maka akan menghasilkan response seperti berikut :

{
"type": "https://tools.ietf.org/html/rfc2616#section-10",
"title": "An error occurred",
"detail": "title: This value should not be blank.",
"violations": [
{
"propertyPath": "title",
"message": "This value should not be blank."
}
]
}

Jika responsenya seperti ini maka validasinya berhasil, bagaimana mudah kan?. Anda bisa menambahkan constraint di property lainnya yang dianggap perlu di validasi.

--

--