Open karelg opened 6 years ago
Ei oska küll ütelda, milles võib probleem olla, sest kui appeali deadline on minevikus, siis tuleb kenasti veateade vormi vastava välja alla, ning ei saa ennem lisada kui appeali deadline on tulevikus.
Mis saab siis kui ModelState.IsValid on millegi päras mitte valiidne, samas tähtaeg on tulevikus?
Kui appeali lisamise lehe peale minna, siis seal on kaks välja, Description ja Deadline DateTime. Juhul kui Deadline on tulevikus ning description on tühi, siis ta näitab veateadet tühja välja all, näiteks Description is required. Ehk siis mõlemad väljad peavad olema täidetud, kusjuures Deadline peab olema tulevikus, juhul kui on minevikus, siis ütleb, et Deadline is in past. Ehk siis minu arust ei saa Modelstate olla mitte valiidne, kui mõlemad nõutud väljad on täidetud ja õiged.
See praegu käitub nii ainult selle pärast, et praegu rakendub kliendi (brauseris) poolne validatsioon. Vaata, mis juhtub siis, kui lehel ära keelata javascript. Serveri poolne valideerimine on siiski praegu loogiliselt vigane.
Selge, lisasin annotatsioonid mudelile, required errormessage jne. Proovisin ise kah läbi, jah tõepoolest, kui Javascript oli maha keeratud, siis sai lisada, aga kui panna mudelile annotatsiooni juurde errormessage, siis toimub serveri poolne validatsioon ning ei lase läbi. Jälle targem 👍
https://github.com/kkorvel/AgileWorksWebAppeals/blob/d8f7e5fdc16cff78d097ddf6c88b32ff562c1fcb/AgileWorksSolution/AgileWorks/Controllers/AppealsController.cs#L56