symfony2의 FOSUser 번들 중 UserManager.php
, 특히 updateUser 함수 (가장 마지막 버전의 프레임 워크와 프레임 워크의 마지막 버전이 있음)를 무시합니다.무한 루프 저장소 symfony2 fos 사용자 번들
<?php
/**
* Updates a user.
*
* @param UserInterface $user
* @param Boolean $andFlush Whether to flush the changes (default true)
*/
public function updateUser(UserInterface $user, $andFlush = true, $form = false)
{
$this->updateCanonicalFields($user);
$this->updatePassword($user);
if ($form !== false) {
$em = $this->objectManager;
$user->setStatus($em->getRepository('BirdOfficeBundle:Status')->find(1));
$language = $em->getRepository('BirdOfficeBundle:Language')->getLanguage(1);
echo '<pre>';
var_dump($language);die();
//$user->setLanguage($em->getRepository('BirdOfficeBundle:Language')->find(1));
//$user->setType($em->getRepository('BirdOfficeBundle:Type')->find(1));
echo '<pre>';var_dump($user);die();
}
$this->objectManager->persist($user);
if ($andFlush) {
$this->objectManager->flush();
}
}
?>
내가이 기능을 수행 할 것은 내 RegistrationController.php
(registerAction 방법)에서 호출하는 것입니다 내 등록 양식의 제출 후 : 여기
, 그것은 작동하고 잘 :
문제는 다음과 같다. 다른 저장소 (Langue, Type 등)에서 find 메소드를 사용하려고하면 웹 브라우저가 중단됩니다.
테스트 용으로 다른 컨트롤러에서 사용하려고했는데 잘 작동합니다.
그래서 문제가 될 수 있습니까?
그런데 findAll 또는 개인 쿼리를 사용하려고했지만 충돌이 발생합니다.
내 dev.log
파일을 확인했는데 event.ERROR
이 없습니다.
오류 로그를 확인하여 요청이 왜 실패했는지 확인 했습니까? – Scriptable
흠, 네 말이 맞아, 그렇게해야 해. Symfony2 파일 (내부에 로그가있는 경우) 또는 MAMP Apache 로그를 검사해야합니까? –
MAMP 아파치 로그와 Symfony 프로젝트에서 앱/로그 폴더를 확인하십시오. – Scriptable