问题标签 [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 中使用 gmail 发送邮件?
在 .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
authentication - 在链配置的命名空间中找不到类“App\Entity\User”
我遇到了错误:
在链配置的命名空间中找不到类“App\Entity\User”
我正在使用 API 平台运行 Symfony 4.2。我需要创建一个 API 令牌/密钥身份验证设置并使用保护身份验证器。
实体:
身份验证器:
安全.yaml
错误发生在这里:
返回 $userProvider->loadUserByUsername($apiKey);
完成后无法加载驱动程序,但我不知道如何解决此问题。谢谢!
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 就会被重定向到登录页面:
我错过了什么?我不知道这个错误试图告诉我什么。
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"
},
但我认为问题出在其他地方。
php - 如何在整个工作区中快速搜索文件(Visual Studio Code)
我已经使用 ctrl+p 在整个项目中搜索我的文件,但它不起作用。我正在搜索用于获取请求的“Request.php”文件。但我无法使用“ctrl+p”找到它。
虽然, ctrl+p 可以找到我的控制器和其他东西,但它不会搜索目录深处的文件,例如:
Symfony\Component\HttpFoundation\Request.php。
是否有 ant 短键来查找此类文件?
symfony - 如何在 Symfony 中的两个表之间创建有关系的夹具?
我有两个实体说“用户”和“地址”,它们之间有“ OneToOne ”关系。
用户表有一个列' address_id ',它是外键,存储地址表的id 。我尝试使用 2 种不同的方法创建夹具:
方法一:
地址夹具.php
方法二:
在此我创建了两个不同的夹具:
地址夹具.php
用户夹具.php
然后我跑了:
$ php bin/控制台原则:fixtures:load
两种方式都没有给我所需的结果。两个表之间使用外键时如何创建夹具?
symfony - Symfony 4.2/API 平台:非确定性安全相关错误
我们正在使用 symfony 4.2 和 API 平台开发一个 REST API,我们遇到了一个奇怪的行为。当我们在生成的端点上发出例如 GET HTTP 请求时:我们要么得到预期的 JSON 响应,要么得到相同请求的 500 错误,看起来是随机的。有趣的是:
- 使用我们的角度客户端会遇到随机错误
- 在相同的 URL 上发出 curl 命令时永远不会显示错误
这是发生错误时返回的 JSON 堆栈跟踪的开头:
为了简单起见,我们实现了一个虚拟的 AbstractGuardAuthenticator,它总是返回一个硬编码的用户,并且表现出完全相同的行为。下面是它的代码,用户实体类的代码以及安全配置的有趣部分:
用户实体类:
security.yaml 文件的提取:
以下是 Web 服务为其展示行为的实体/资源的示例。没有什么花哨...
请注意,我们还有其他带有自定义数据提供者的 Web 服务,它根据当前用户过滤返回的数据。以一种不确定的方式,对这些的请求有时也会失败,因为当前用户为空(而用户确实已登录)。
php - 由于两个表之间的外键约束而无法登录
我有两个表'用户'和'地址',它们之间存在OneToOne关系,因为用户表有一个列'address_id',它存储地址表的'id'。
这是用户实体中的注释:
安全.yaml:
控制器:
插入用户名和密码时出现此错误:
由于系统问题,无法处理身份验证请求。
这就是我在控制器中转储()错误时得到的结果。
当我删除 $address 变量及其 getter 和 setter 函数时,登录工作正常,但是当我使用它时,它给了我上述错误。
我怎样才能通过使用外键来实现这一点?我是 symfony 的新手,我正在学习 4.2 版。
symfony - 删除包含 hiddentype 的集合
本质上,如果构建器附加了 hiddenType,我无法使用 orphanRemoval 删除集合。我不确定是否需要为 hiddenType 字段做一些特殊的事情才能将其删除。没有 hiddenType 字段一切正常,但是一旦我将该字段添加到构建器,当我删除集合时删除函数永远不会被调用,然后我收到一个 db 错误,告诉我字段不能为空。
如果有帮助,我正在使用 js 动态添加和删除集合。但奇怪的是,这在没有隐藏字段的情况下也能正常工作,所以我想知道是否有与其他字段类型不同的隐藏字段有关。
这不起作用
这确实
该字段通常有效,只是不删除集合。setter 和 getter 几乎是样板
我只是看不出 hiddenType 和任何其他会导致删除函数无法调用的字段类型之间的区别。
php - 学说关系,当我克隆一个实体时打破了多对多
所以我正在创建一个学说实体,称为参展商。该实体与其他 2 个实体有关系,两者都是多对多关系。它们是报价和服务。
当我克隆参展商时,它还会使用新 ID 克隆所有现有的报价和服务。
有没有办法可以防止关系克隆,我只想克隆 Exhibitor?
有人知道吗?
目前我只是在做