问题标签 [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.

0 投票
2 回答
2048 浏览

php - 如何在 symfony 4 中使用 gmail 发送邮件?

在此处输入图像描述 我正在使用 symfony 4.2,

在 .env 文件中:

MAILER_URL=gmail://saurabhofficial:qwerty@localhost?encryption=tls&auth_mode=oauth

swiftmailer.yaml

swiftmailer:
url: '%env(MAILER_URL)%'
spool: { type: 'memory' }

服务:

控制器:

if($welcomeMail->createMail()){ $show = '检查你的邮件'; 上面
的代码给了我“真”,但邮件邮件没有发送/接收。我究竟做错了什么?在 SYMFONY 4 中是否有其他方法来实现它?

更新

服务.yaml

配置/包/dev/swiftmailer.yaml

0 投票
1 回答
587 浏览

authentication - 在链配置的命名空间中找不到类“App\Entity\User”

我遇到了错误:

在链配置的命名空间中找不到类“App\Entity\User”

我正在使用 API 平台运行 Symfony 4.2。我需要创建一个 API 令牌/密钥身份验证设置并使用保护身份验证器。

实体:

身份验证器:

安全.yaml

错误发生在这里:

返回 $userProvider->loadUserByUsername($apiKey);

完成后无法加载驱动程序,但我不知道如何解决此问题。谢谢!

0 投票
1 回答
40 浏览

oauth-2.0 - hwi_oauth 无法连接到 FOS_OAUTH_SERVER

我浏览了几个使用集中登录服务的解决方案。

我的情况如下:

  • login.domain.tld 下的中央登录
  • backend.domain.tld 下的后端
  • 客户服务位于:support.domain.tld
  • frontend.domain.tld 下的前端
  • accounts.domain.tld 下的帐户和发票

我使用正确的路由设置 Symfony oauth 服务器的朋友,如配置中提到的,包括表等。

我还为 backend.domain.tld 添加了 oauth 登录令牌等

据我所知,一切都按原样设置。(配置不多)

在后端我安装了版本 0.6.x 的 hwi_oauth 包

这些是配置文件:

httplug.yaml:

HWI_oauth.yaml

env 文件是必需的,因为我需要替换开发系统 url(xxx.domain.test 与其生产对应)

安全.yaml

Bundle Domain\Library\EntitiesBundle\Entities\User\User 是一个私有包,包含所有迁移数据和实体表。

最后但并非最不重要的 twi_oauth_routing.yaml

我目前面临的困难是,当我调用 backend.domain.test/login 时,我看不到登录系统上的连接尝试我看到一个指向 /connect/domain-oauth 的链接(我从来没有在任何地方配置)。如果我点击它,它会将我重定向到 /login 但我在日志中看不到连接。

我监督的任何线索?我试图让这个工作大约一个星期。通过几个例子工作,但我无法让它正常工作。

任何帮助表示赞赏。

软件:Symfony 4.2、PHP7.3 MySQL 8、Redis 作为缓存


更新:到目前为止,我能够让它工作。我缺少 /connect/.... 路径的 access_control 规则。

现在我可以看到一个允许/拒绝按钮。

但是只要我允许我进入分析器,以下 url 就会被重定向到登录页面:

https://bacend.domain.tld/login/domainLogin?error=invalid_scope&error_description=An%20unsupported%20scope%20was%20requested.&state=51057e2ba6bd1540e5981e193c24ac9c

我错过了什么?我不知道这个错误试图告诉我什么。

0 投票
1 回答
399 浏览

ckeditor - “ckeditor”命名空间中没有定义命令

我试图在我的 Symfony 4.2 项目上安装 FOS\CKEditoBundle,它应该与 easyAdminBundle 一起使用......

当我遵循 Sensio 文档并尝试执行./bin/console ckeditor:install命令时,我收到此错误:

There are no commands defined in the "ckeditor" namespace

我已经像这样更新了我的 composer.json:

"auto-scripts": { "cache:clear": "symfony-cmd", "ckeditor:install --clear=drop": "symfony-cmd", "assets:install --symlink --relative %PUBLIC_DIR%": "symfony-cmd" },

但我认为问题出在其他地方。

0 投票
2 回答
2846 浏览

php - 如何在整个工作区中快速搜索文件(Visual Studio Code)

我已经使用 ctrl+p 在整个项目中搜索我的文件,但它不起作用。我正在搜索用于获取请求的“Request.php”文件。但我无法使用“ctrl+p”找到它。

虽然, ctrl+p 可以找到我的控制器和其他东西,但它不会搜索目录深处的文件,例如:

Symfony\Component\HttpFoundation\Request.php。

是否有 ant 短键来查找此类文件?

0 投票
1 回答
2066 浏览

symfony - 如何在 Symfony 中的两个表之间创建有关系的夹具?

我有两个实体说“用户”和“地址”,它们之间有“ OneToOne ”关系。

用户表有一个列' address_id ',它是外键,存储地址表的id 。我尝试使用 2 种不同的方法创建夹具:

方法一:

地址夹具.php

方法二:

在此我创建了两个不同的夹具:

地址夹具.php

用户夹具.php

然后我跑了:

$ php bin/控制台原则:fixtures:load

两种方式都没有给我所需的结果。两个表之间使用外键时如何创建夹具?

0 投票
0 回答
121 浏览

symfony - Symfony 4.2/API 平台:非确定性安全相关错误

我们正在使用 symfony 4.2 和 API 平台开发一个 REST API,我们遇到了一个奇怪的行为。当我们在生成的端点上发出例如 GET HTTP 请求时:我们要么得到预期的 JSON 响应,要么得到相同请求的 500 错误,看起来是随机的。有趣的是:

  • 使用我们的角度客户端会遇到随机错误
  • 在相同的 URL 上发出 curl 命令时永远不会显示错误

这是发生错误时返回的 JSON 堆栈跟踪的开头:

为了简单起见,我们实现了一个虚拟的 AbstractGuardAuthenticator,它总是返回一个硬编码的用户,并且表现出完全相同的行为。下面是它的代码,用户实体类的代码以及安全配置的有趣部分:

用户实体类:

security.yaml 文件的提取:

以下是 Web 服务为其展示行为的实体/资源的示例。没有什么花哨...

请注意,我们还有其他带有自定义数据提供者的 Web 服务,它根据当前用户过滤返回的数据。以一种不确定的方式,对这些的请求有时也会失败,因为当前用户为空(而用户确实已登录)。

0 投票
1 回答
34 浏览

php - 由于两个表之间的外键约束而无法登录

我有两个表'用户'和'地址',它们之间存在OneToOne关系,因为用户表有一个列'address_id',它存储地址表的'id'

这是用户实体中的注释:

安全.yaml:

控制器:

插入用户名和密码时出现此错误:

由于系统问题,无法处理身份验证请求。

这就是我在控制器中转储()错误时得到的结果。

当我删除 $address 变量及其 getter 和 setter 函数时,登录工作正常,但是当我使用它时,它给了我上述错误。

我怎样才能通过使用外键来实现这一点?我是 symfony 的新手,我正在学习 4.2 版。

0 投票
0 回答
36 浏览

symfony - 删除包含 hiddentype 的集合

本质上,如果构建器附加了 hiddenType,我无法使用 orphanRemoval 删除集合。我不确定是否需要为 hiddenType 字段做一些特殊的事情才能将其删除。没有 hiddenType 字段一切正常,但是一旦我将该字段添加到构建器,当我删除集合时删除函数永远不会被调用,然后我收到一个 db 错误,告诉我字段不能为空。

如果有帮助,我正在使用 js 动态添加和删除集合。但奇怪的是,这在没有隐藏字段的情况下也能正常工作,所以我想知道是否有与其他字段类型不同的隐藏字段有关。

这不起作用

这确实

该字段通常有效,只是不删除集合。setter 和 getter 几乎是样板

我只是看不出 hiddenType 和任何其他会导致删除函数无法调用的字段类型之间的区别。

0 投票
1 回答
131 浏览

php - 学说关系,当我克隆一个实体时打破了多对多

所以我正在创建一个学说实体,称为参展商。该实体与其他 2 个实体有关系,两者都是多对多关系。它们是报价和服务。

当我克隆参展商时,它还会使用新 ID 克隆所有现有的报价和服务。

有没有办法可以防止关系克隆,我只想克隆 Exhibitor?

有人知道吗?

目前我只是在做