Symfony既指用于构建Web应用程序的PHP框架,也指构建框架的一组组件。此标记指的是当前支持的主要版本2.x,3.x和4.x.或者,您可以使用相应的标记指定确切的版本。此标记不应用于有关Symfony 1.x的问题。请改用Symfony1标签。
如何在 Symfony 4.4 中设置默认缓存生命周期? [重复]
我想在不同的环境中为教义缓存设置默认的缓存生命周期/超时。 php bin/console config:dump-reference 学说 仅显示设置生命周期的选项...
无法与主机“ssl://null:465”建立连接:stream_socket_client():php_network_getaddresses:getaddrinfo失败
如果我在本地主机上使用mailtrap在symfony4.4中使用symfony/mailer,它就可以工作。没有错误 但是如果我在服务器 https://my.ionos.fr 上尝试,它会显示如下错误: 无法连接
在Symfony Messenger组件中绑定exchange到exchange
是否可以在 Symfony 消息组件中定义交换之间的绑定? (此处为 4.4 版本)。 我知道可以将交换绑定到队列,如下所示: 运输: 传入: ...
我在使用 symfony 框架创建数据库时遇到问题[已关闭]
结构: 学生:名字、姓氏、出生日期、图像。 类:名称、部分 课程:名称、描述 成绩:学生、课程、班级 所以我正在努力在 symfony 中使用 do 创建这个数据库...
FOSUserBundle 安装时出现 Symfony 4.4 错误
我关注了这两篇关于“如何在 symfony 4.4 中安装 fosuserbundle”的文章: https://vfac.fr/blog/how-install-fosuserbundle-with-symfony-4 https://ourcodeworld.com/articles/read/794/how-to-
如何在 Symfony 中使用`IntlDateFormatter`?
如何在 Symfony 4.4 中实现 IntlDateFormatter。 参考https://symfony.com/doc/current/components/intl.html我已经安装了symfony/intl 现在,当我在代码中使用它时: 使用 Symfony\
带有翻译的 Symfony 4,没有通往/没有 _locale 的路线
我创建了一个 Symfony 4.4.8 项目,其中包含英语和法语翻译,因此我按照以下步骤操作: https://symfony.com/doc/current/translation.html 并设置: config/packages/translation.y...
Symfony 4.4 如何使用 collectionType 从 0 个字段开始
我的表单中有一个基于实体的集合类型。我希望用户能够根据不同的字段动态添加新字段。所以在页面加载时我希望显示 0 个字段。用户填写后...
在Symfony 4.4中使用RedisTagAwareAdapter
我在让 Symfony 与 Redis 的标签感知适配器良好配合时遇到问题 对我来说不幸的是,Symfony 5.2 包含此功能,但由于我们不会切换到类似的非 lts 版本...
我是 symfony 4.4 的新手,我正在处理 security.yaml 文件中的角色,我有 3 种类型的用户:管理员、recruter 和用户,我试图授予 recruter 访问登录表单的权限
我正在使用 Symfony 4.4 并尝试上传图像。但是在创建模式时我收到注释错误。 [语义错误] 注释“@Symfony\Component\Validator\Constraints\I...
Symfony CLI 在运行“new”命令时未使用正确的 PHP 版本
我的环境设置如下:带有 PHP7.1.33 版本的 Wamp 3、composer 2 和 Symfony 二进制文件。 但是当我尝试运行 symfony new my_project_name --version=4.4 --full 时,出现此错误:
在SF4.4中使用setData批量设置Symfony表单字段值
在我的 Symfony 4.4 应用程序中,我的控制器中有以下代码。我正在尝试根据以前提交的内容或从数据库中提取的数据来预先填充表单。重要的是,
我想在 Symfony 4.4 路由中用“-”替换空格(%20)并删除我的 {slug} 的第一个大写字母。 例如: 食谱控制器.php /** * @Route("/receta/{title}", name="
4(升级版)。并且 .env.local 不包括在内可能是什么原因? 要求 "symfony/acl-bundle": "^1.0", "symfony/asset": "^4.4", &...
Symfony3 提交后丑陋的 URL 路径(URL 重写或路由)
我正在使用: Symfony v3.0.6; 教义 v2.5.4 我在教义查询中使用 LIKE 构建了站点搜索。 // 我的搜索查询 $query = $em->createQueryBuilder() ->选择('i') ->来自('
如何在 symfony 的 dev 和 prod 版本中禁用 HTTPS 或更改为 HTTP?
我的问题如标题所示。 在我的项目中,我尝试将 HTTPS 添加到 /login 和 /admin 路由。两条路由均从第三方捆绑包导入:从 FOSUserBundle 登录,从
如何在我的用户实体中正确使用 `eraseCredentials` 进行 symfony 应用程序中的默认身份验证?
我正在构建一个基本的 [email protected] 应用程序。 我创建了自己的 User 实体,扩展了 Symfony\Component\Security\Core\User\UserInterface 和 PasswordAuthenticatedUserInterface。 我正在使用...
我有一个 API Platform DataTransformer,它使用注入的 ValidatorInterface 来验证传入请求的 JSON POST 正文。它基本上是文档中示例的副本: 我有一个 API Platform DataTransformer,它使用注入的 ValidatorInterface 来验证传入请求的 JSON POST 正文。它基本上是 docs: 中示例的副本 <?php namespace App\DataTransformer; use ApiPlatform\Core\Validator\ValidatorInterface; use ApiPlatform\Core\DataTransformer\DataTransformerInterface; use App\Entity\Ticket; use App\DTO\TicketInput; class InputDataTransformer implements DataTransformerInterface { public function __construct( private readonly ValidatorInterface $validator, ) {} /** * @param TicketInput $object */ public function transform($object, string $to, array $context = []): Ticket { // Validation $this->validator->validate($object); $ticket = new Ticket($object->id, $object->content); return $ticket; } public function supportsTransformation($data, string $to, array $context = []): bool { return (Ticket::class === $to) && (($context['input']['class'] ?? null) === TicketInput::class); } } 通过 ContextBuilder 和 supportsTransformation(),我确保传入的 $object 属于 TicketInput 类型。这堂课就是这么简单: <?php namespace App\DTO; class TicketInput { public int $id; public ?string $content; } 我想知道的是:验证器通过 TicketInput::class 验证 $id 必须是整数并且不可为空。 $content 必须是字符串,且允许为空。 所以这些是有效输入: { "id": 123, "content": null }, { "id": 123, "content": "testtest" } 这是无效并被拒绝(400 - 错误请求): { "id": null, "content": "foobar" } 到目前为止一切顺利。但我的一个单元测试使用此 JSON 作为请求正文: { "content": "foobar" } 这破坏了我的代码,因为 $id 是结果 Ticket::class 的必需值。 我非常惊讶最后一个案例能够通过验证器,因为我在 $id 中明确将 TicketInput::class 定义为(不可为空)类变量。有人可能会争辩说,验证器没有义务在验证时验证“未初始化”的属性(根据 var_dump,这里就是这种情况),但尽管如此,我还是对如何定义该属性是 mandatory 感兴趣。 并且必须是 JSON POST 正文的一部分。 我能想到的最好的办法是 Symfony 验证约束 #[Assert\NotBlank(allowNull: false)](参见 docs),它检查 is_null() 并间接检查 isset(),但我不敢相信这就是解决方案,而且我已经像这样标记每个属性(实际的TicketInput::class比这个MWE更大更复杂)。是否没有任何验证器配置标志告诉它确保 DTO 中的属性在 JSON 正文中是强制性的? 每个简单的 JSON 模式验证器都能够做到这一点,我想知道为什么我在 Symfony 文档或 API 平台文档中都没有找到任何提示。 我对此也很感兴趣。 如果我没记错的话,另一种情况是对 PUT 和 PATCH 方法使用相同的 DTO。 PATCH 方法允许仅发送您想要更新的字段,而 PUT 方法则需要整个数据都在那里。因此,根据方法,我想使用相同的 DTO 对象,但仅允许验证发送的字段。
我尝试在 webpack encore 中配置开发服务器以进行热重载。进行更改并按 ctrl + s 后,页面将刷新,您可以看到更改。但可以改变吗