1
我想有一些我錯過了。 我有一個用戶實體,它通過yml
文件進行驗證,但每次我向路由發送郵寄請求時,似乎都不會收到我的請求。有了這個我的意思是路線工作正常,但我不斷收到錯誤消息,密碼和用戶名不應該是空的(由於我設置的限制)。所以它似乎沒有讓我的請求對實體進行驗證。symfony驗證不起作用
我就確定在我的配置觸發此設置: validation: { enabled: true, enable_annotations: true }
這裏是我的routing.yml
:
user_login_homepage:
path: /check
defaults: { _controller: UserLoginBundle:Login:checkCredentials }
methods: [POST]
這裏是我的validation.yml
User\UserBundle\Entity\User:
properties:
username:
- NotBlank: ~
password:
- NotBlank: ~
這裏是我的控制器( LoginController.php
)
public function checkCredentialsAction(Request $request)
{
$recursiveValidator = $this->get('validator');
$user = new User();
$errors = $recursiveValidator->validate($user);
if (count($errors) > 0) {
$errorsString = (string) $errors;
return new Response($errorsString);
}
return new Response('Yuppy');
}
我只是試圖按照說明,但我不能讓它的工作:( 我錯過了什麼?
呀非常感謝。是的,他們正在通過POST。只是一個有關你的解決方案的問題。不是以這種方式將這些數據保存在表格中嗎? –
通過這種方式,你填寫實體,檢查錯誤,然後你可以保存它或你想要的,如果你使用的是symfony表單,你可以自動填寫表單所傳遞的表單 –
是的,我知道但是這個差別情況在於我沒有使用表格,所以它有點不同! 乾杯人! :) –