问题标签 [symfony-4.2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 如何从对象中获取价值?
我正在使用 Symfony 4.2,我在我的控制器中获取了会话,例如:
$data = $this->get('security.token_storage')->getToken()->getUser();
当我
转储($数据);
给我,
在这里,如何从该对象中获取“f_name”?
symfony - 成功登录后如何设置 access_control 以禁止具有“ROLE_USER”的用户访问路径:^/login?
在security.yaml
文件中,我们定义了各种路由的访问控制以及可以访问同一路由的角色。
但是我们如何设置已登录但不能重新访问 /login 页面的用户,除非它注销并且“ROLE_USER”更改为“anon”。
我是 Symfony 4.2 的新手。
控制器:
php - 使用 Compiler pass 实现策略模式 Symfony 4 对我来说是错误的
我使用 Symfony 4.2 实现了策略模式,问题是下面的 addMethodCall 没有执行。
在 kernel.php 我得到了受保护的函数 build(ContainerBuilder $container) { $container->addCompilerPass( new ConverterPass() ); }
我的 ConverterInterface.php
然后是 ConvertToSela.php 和类似的另一个 Convert
在我执行的 Conversion.php 中,我得到空数组,这意味着未调用 addConverter。
symfony-4.2 - 使用 $form->createView() 渲染表单时 Symfony 4.x ROLE_USER 错误
我正在使用 Symfony 4 创建一个博客并使用以下命令生成表单:
php bin/控制台 make:form
当我尝试像这样渲染它时:
我收到这个错误
无法将数据库值“'ROLE_USER'”转换为 Doctrine Type json
对于这条线
'form' => $form->createView()
这是我的 getRoles :
和我的 security.yaml
我正在搜索 3 天并在没有安全管理的情况下在第二个目录中重新启动了我的项目,我不明白它的来源以及如何解决它
谢谢
php - Api-Platform 在 api_platform.yaml 中缺少“服务器”配置键
缺少Api 平台配置页面servers
键。
更多信息在这里:
- https://api-platform.com/docs/core/configuration/
- https://swagger.io/docs/specification/api-host-and-base-path/
我需要找到一种解决方案来将服务器添加到 /api/docs.json?spec_version=3 而无需每次都手动执行
现在我正在从浏览器下载文件,然后手动添加缺少的密钥——它可以工作,但这不是我想要的。
{"openapi":"3.0.2","servers":[{"url":""}],...
我正在为想要使用 openapi 文档的新开发人员寻找最省力的最佳解决方案。
authentication - Symfony 在登录和重定向之间丢失身份验证会话
我有一个应用程序,它的表单登录一直运行良好。
然后,我使用本指南为其添加了一个 api 端。现在我在网页端的登录不再起作用了。
这是我的 security.yaml 文件:
我不确定我还需要发布什么,但我想不出任何其他可能会导致它崩溃的改变。
如果我在实现 API 之前恢复到某个点,登录会再次正常工作。
可能是什么问题?
symfony - 使用自定义用户实体将我添加到 Symfony 4.2 安全性
我正在使用 Symfony 4.2,
我正在使用安全组件,我正在尝试添加记住我。
起初记住我为我工作,但是当我的用户实体成为自定义时,记住我不再工作了,
我的自定义用户:
我已连接到无法对其进行任何更改的 wordpress 数据库(我必须只读),并且我需要向用户添加一些字段,因此我必须使用 WpUsers 创建一个新表 User OneToOne(wordpress用户),
所以,我使用教义从现有数据库创建实体,我没有触及这些实体,我只是创建我的用户实体只是为了将角色字段添加到用户系统:
Wordpress 通行证使用 phpass 进行散列。
Entity\WpUsers(由学说生成):
实体\用户.php:
安全.yaml:
安全\登录表单身份验证器:
login.twig.html:
symfony - 在教义中使用间隔时出错
当我使用下面的查询(Doctrine 2)时,我遇到了错误,并且不能在查询中使用 INTERVAL,
错误:预期的 Doctrine\ORM\Query\Lexer::T_CLOSE_PARENTHESIS,得到 '48'"
config - Symfony 4.2 自定义循环引用处理程序不适用
背景是我一直在尝试为我的实体设置一个自定义循环引用处理程序,这将影响所有实体。
根据文档(https://symfony.com/doc/current/components/serializer.html#handling-circular-references),我们被引导在文件中设置服务circular_reference_handler
下的值,如下所示:serializer
config/packages/framework.yaml
我的实际问题是,当序列化程序尝试加载循环引用处理程序时,我的覆盖似乎不存在: 图像显示键引用 图像显示上下文为空
为什么我的覆盖根本没有应用于上下文?
我试图:
- 重新加载缓存
- 使用我的 API 平台包中的 ContextBuilder 类
- 在规范器中应用它
没有一个工作过
我向你展示了我的 yaml,但这里是处理程序:
这是我尝试使用的上下文构建器:
这是我注册的地方(doc):
我希望AbstractNormalizer->handleCircularReference()
在使用该方法时应用我的自定义 circular_reference_handler ,但实际情况是此方法中收到的上下文不包括我的附加键/值对(例如['circular_reference_handler => App\Services\CircularReferenceHandler]
php - 如何覆盖默认 Psr\LogLoggerInterface 别名
我尝试为实现此接口的服务创建 ID 为“Psr\Log\LoggerInterface”的别名。
但别名似乎不起作用。
这是我的配置services.yaml
这就是我尝试在控制器中获取服务的方式:
我希望得到有类的服务,A\Name\Space\LoggerService
但我得到了类Symfony\Component\HttpKernel\Log\Logger
。
如果我直接获得服务,它运行良好:
最后,如果我将别名更改为:
它运作良好。但我不想覆盖 Symfony 记录器服务, 只覆盖别名。