我有一个QR码实体,在用户ID上有一个ID,一个令牌和一个辅助密钥。 我访问提供一些内容的视图和一个允许用户连接的按钮。 这是我遇到的麻烦,我填写了表格,希望当用户连接时,他为自己分配此QR码。 但是目前我什至没有进入页面:
/ getQrCode / doggybag / {id} / {token}
我的控制器:
class QRScannerController extends AbstractController
{
/**
* @Route("/getQrCode/doggybag/{id}/{token}", name="qrcode")
*/
public function index(EntityManagerInterface $em, int $id, string $token): Response
{
$qrcode = $em->getRepository(Qrcode::class)->findAll();
if (null === $qrcode) {
throw new NotFoundHttpException();
}
return $this->render('qr_scanner/index.html.twig', [
'qrcode' => $qrcode,
]);
}
/**
* @Route("/getQrCode/doggybag/{id}/{token}/connexionUser", name="connexionUser")
*/
public function connexionUser(EntityManagerInterface $em, int $id, string $token, Request $request): Response
{
$qrcode = $em->getRepository(Qrcode::class)->findAll();
if (null === $qrcode) {
throw new NotFoundHttpException();
}
if ($request->isMethod('POST')) {
$em = $this->getDoctrine()->getManager();
$em->getRepository(User::class)
->findAll();
return $this->render('qr_scanner/congrats.html.twig');
}
return $this->render('qr_scanner/connexionUser.html.twig', [
'qrcode' => $qrcode,
]);
}
}
其他担心,我通过给他们一个这样的链接在JS中生成我的qr代码:
domain.com/getQrCode/doggybag/ {id} / {token}
所以我必须在产品中进行所有测试...
编辑:
实际上,我的问题来自我的观点。 我的允许进入视图的按钮
“ connexionUser”
操作如下:
<a href="{{path('loginUser') }}"><img src="{{asset('build/assets/img/xxx.png')}}"></a>
段落没有完成,我想他想到达页面时会忘记我的qrcode的ID和令牌:
domain.com/getQrCode/doggybag/ {id} / {token} / connexionUser
如果我添加"/loginUser"
来表示真实ID和真实令牌,则它起作用。
如何忘记网址的数据?
Edit2:
这样在我的视图中传递ID和令牌就足够了:
/**
* @Route("/getQrCode/doggybag/{id}/{token}", name="qrcode")
*/
public function index(EntityManagerInterface $em, int $id, string $token): Response
{
$qrcode = $em->getRepository(Qrcode::class)->findAll();
if (null === $qrcode) {
throw new NotFoundHttpException();
}
return $this->render('qr_scanner/index.html.twig', [
'qrcode' => $qrcode,
'id' => $id,
'token' => $token
]);
}
并在我看来像这样使用它:
<a href="{{ path('connexionUser', {id: id, token: token}) }}"><img src="{{asset('build/assets/img/xxx.png') }}"></a>
问题解决了! :D