2
今天我试图创建一个新用户,并得到了一个错误:FOS用户错误与添加新用户
General error: 1364 Field 'expired' doesn't have a default value
当我试图新用户添加到FOS用户表此错误发生。也许这个错误来自fos用户包版本的新更新。我该如何解决这个问题?
这里是我的代码:
if ($form->isValid()) {
$event = new FormEvent($form, $request);
$dispatcher->dispatch(FOSUserEvents::REGISTRATION_SUCCESS, $event);
$em = $this->getDoctrine()->getManager();
$language = $em->getRepository('AppBundle:Language')->findOneBy(['code' => $request->getLocale()]);
$user->setLanguage($language);
$user->addRole('ROLE_FARMER');
$level = $em->getRepository('AppBundle:Level')->find($request->request->get('fos_user_registration_form')['level']);
$user->getClient()->setLevel($level);
$user->getClient()->setUser($user);
try {
$userManager->updateUser($user);
$team = new Team();
$team->setClient($user->getClient());
$team->setUser($user);
$em->persist($team);
$em->flush();
} catch (\Exception $e) {
$errorMessage = $e->getMessage();
$errorForm = $this->showErrors($form, $errorMessage);
return $this->render('FOSUserBundle:Registration:register.html.twig', array(
'form' => $errorForm->createView(),
));
}
if (null === $response = $event->getResponse()) {
$url = $this->generateUrl('fos_user_registration_confirmed');
$response = new RedirectResponse($url);
}
$dispatcher->dispatch(FOSUserEvents::REGISTRATION_COMPLETED, new FilterUserResponseEvent($user, $request, $response));
return $response;
}