php - [symfony] 连接注册在同一页面?
问题描述
我的 symfony 代码确实有问题,我实际上正在搜索如何在同一页面上放置两个表单,一个用于连接,一个用于登录,如果我提交注册表单,这将显示错误,因为它是指定页面在 security.yaml 中:这是我的注册表单的代码...
class SecurityController extends AbstractController
{
/**
* @Route("/", name="register_login")
*/
public function register(UserPasswordEncoderInterface $hasher,
Request $request, ObjectManager $manager)
{
$userInfos = new UserInfos();
$form = $this->createForm(RegistrationType::class, $userInfos);
$form->handleRequest($request);
if($form->isSubmitted() && $form->isValid())
{
$userInfos->setLastConnection(new \DateTime());
$userInfos->setSubscribedAt(new \DateTime());
$userInfos->setPassword($hasher->encodePassword($userInfos,
$userInfos->getPassword()));
$manager->persist($userInfos);
$manager->flush();
}
return $this->render('security/login.html.twig', [
'formUser' => $form->createView()
]);
}
}
它返回带有登录表单的树枝文件......
<form class="form-inline my-2 my-lg-0" action="{{ path('register_login') }}" method="post">
<input class="form-control mr-sm-2" required type="email" name="_username" placeholder="Email">
<input class="form-control mr-sm-2" required type="password" name="_password" placeholder="Mot de passe">
<button class="btn btn-success my-2 my-sm-0" type="submit">Connexion</button>
</form>
我的 security.yaml 配置:安全性:编码器:App\Entity\UserInfos:算法:bcrypt
# https://symfony.com/doc/current/security.html#where-do-users-come-from-user-providers
providers:
in_memory: { memory: ~ }
DB:
entity:
class: App\Entity\UserInfos
property: email
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
main:
anonymous: true
provider: DB
form_login:
login_path: register_login
check_path: register_login
感谢您的关注。
解决方案
您将 2 个表格放在树枝中,您必须将表格放在一个控制器中(可能是注册)
把 $formRegister->createView(); $formLogin->createView() 在您的模板中。
一种形式的动作在 {{ path('register...') }} 并登录 {{ path('login') }}
但请注意,您必须控制所有变量,否则会显示错误
推荐阅读
- python - query-exporter 未连接到数据库 - 抛出“找不到模块”
- python - 如何在 Matplotlib 中为不同图形的 y 轴刻度标签提供相同的空间?
- javascript - 在单击select2 js时进行按钮操作
- java - 生成大于和小于的字符串
- flutter - 如何在颤振中获取javascript数据
- ionic-framework - 如何在按钮单击时提交离子单选按钮值?
- java - 试图模仿java功能接口
- python - 使用循环自动回复推文
- php - dompdf 图像不显示
- python-3.x - Python 文件仅在空闲执行时运行,而不是在编译或复制 .py/.pyw 文件时运行