php - InvalidArgumentException:未定义标识符“user.management.active”
问题描述
我正在尝试将用户的 qr 下载到 PDF 文件中,但我收到此错误,即 user.management.active 未定义。我试图追踪它,但我无法确定问题出在哪里。有人可以帮帮我吗?
错误:
[InvalidArgumentException: Identifier "user.management.active" is not defined. (uncaught exception) at /Library/WebServer/Documents/timekeeper_service/vendor/pimple/pimple/src/Pimple/Container.php line 96
这是我现在拥有的代码:
提供者
public function register(Container $container)
{
$container['user_management.active'] = $container->factory(function (Container $c) {
/** @var Jade $jade */
$jade = $c['jade_factory'];
$jade->view = 'cms/user_management/active_users';
/** @var UserManagementController $controller */
$controller = new UserManagementController();
$controller->setUserQuery(\UserQuery::create());
$controller->setView($jade);
return $controller;
});
用户管理
$user_management->get('/list/download_all_qr', 'user.management.active:qrToPdf');
控制器
public function qrToPdf(Application $app)
{
$users = $this->user_query->find();
$user_content = array();
foreach ($users as $user) {
$user_content[] = [
'name' => sprintf('%s, %s', $user->getLastName(), $user->getFirstName()),
'qr_code' => base64_encode(generateQrCode($user->getEmployeeId()))
];
}
/** @var Jade $jade */
$jade = $app['jade_factory'];
$jade->view = 'cms/user/download_all_qr';
$jade->with(['users' => $user_content]);
// Export to PDF
$mpdf = new \mPDF();
$mpdf->WriteHTML($jade->render());
$mpdf->Output('users_qr_'.Carbon::today()->toDateString().'.pdf', 'D');
}
解决方案
您已将您的工厂注册为,user_management.active
但随后您尝试访问user.management.active
您必须将“用户”之后的点更改为下划线或相反。
$user_management->get('/list/download_all_qr', 'user_management.active:qrToPdf');
推荐阅读
- android - 使用适用于 Android 的 Google Maps SDK 检测地理点是否位于折线内
- android - 如何从 Arraylist 在 whatsapp 中添加贴纸
- javascript - 在覆盖 div 中完成第一次单击时触发双击
- python - 保存在管理日志中时,Django unicode 转换卡住了?
- python - 使用 Pipenv 处理导入和 Pythonpath
- firebase - Firebase 中的事件转化
- python - 数据流:使用 python 管道更新 BigQuery 行
- python - 放置海龟设置的安全地方?
- angular - 无法读取未定义的属性“setParent”
- java - 上滑面板(Java 到 Kotlin)