问题标签 [symfony4]
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.
symfony - symfony4 swiftmailer 不存在的类或接口:“Swift_Mailer”
在 symfony4 上使用 composer 安装 swiftmailer 之后
composer require mailer
我写了一个小函数来测试它
邮件程序 URL 在 .env 中相应配置
但是通过调用我的函数,我收到以下错误消息
当我执行
swiftmailer没有出现,是服务注册失败了吗?我要检查什么?
谢谢塞巴斯蒂安
xml - 将 XML 作为正文而不是 JSON 发送时出错
我正在使用 JMSSerializerBundle 和 RestBundle 开发一个简单的 Symfony 4 应用程序,它保存来自 POST 请求的数据并为 GET 请求返回数据。请求主要使用 JSON 作为格式,但我需要一个带有接受和解析 XML 的 POST 路由。
我对所有 JSON 请求都没有问题,但是 XML 请求给了我以下错误:
我的 RestBundle 配置如下所示:
POST 方法就是这样:
我将请求的 Content-Type 标头设置为application/xml
. 如果我将其转换为 JSON 并发送一个空正文(或具有有效 JSON 的正文)一切正常(我收到愚蠢的请求)。
我还尝试添加此use
语句:use Symfony\Component\Serializer\Encoder\XmlEncoder;
,但这没有任何改变。
我的错误在哪里?为什么 JSON 工作得很好,但 XML 给我错误?感谢帮助!
编辑:如果我删除Content-Type: application/xml
. 但我不知道,为什么会出现这个问题,而且我不确定将来 API 的用户是否不会发送这个特定的标头。我能做些什么?
php - Symfony 4 - 表单返回空错误
我目前正在处理一个表格,我收到了这个错误:
这是我的代码:
表单的简短版本(CustomerFormType):
客户控制器:
客户实体:
非常感谢您的时间和帮助。
php - 在 Symfony 中注入配置
我正在使用 Symfony 4,并且有一个配置文件需要以App\Command\FooCommand
数组的形式注入到命令中。我在 注册了一个自定义 DI 扩展App\Kernel::configureContainer()
,用于验证自定义配置文件(为了开发方便,配置很大,在开发过程中会经常更改)。该命令的构造函数是public function __construct(Foo $foo, array $config)
,我期望配置作为第二个参数。
现在我如何把这个配置放在那里?文档中提到了参数,但它不是参数。我正在考虑更改命令的定义并在Extension::load
方法中添加此参数,如下所示:
但它以错误结束
您请求了一个不存在的服务“App\Command\FooCommand”。
但是,该命令必须已自动注册为服务。
我在做什么错以及如何注入此配置?
symfony - Symfony 4,从注释中检查角色,是否可以调用用户角色验证功能?
使用 Symfony(我从 Symfony 4 学习),我希望根据连接用户的角色允许访问自定义控制器。
在注释中,我看到我可以通过以下方式管理角色访问:
是否可以像这样在注释中调用函数?
symfony - make:entity 命令未在我的 Symfony 4 项目中注册
执行命令后:
我尝试使用以下命令创建数据库:
并尝试使用以下命令创建新实体:
但我只是收到消息:
[错误] 运行命令 ""make:entity" Product" 时引发错误。消息:““make”命名空间中没有定义命令。”
php - Symfony 4 全局路由前缀
我在 Symfony 4 应用程序中找不到任何有关全局路由前缀的信息。我发现的唯一一件事@route
是用. 但我不使用注释,我需要所有控制器都具有相同的前缀。
现在我可以在文件中像这样在 S3 中执行此app/config/routing.yml
操作:
但是 S4 是无捆绑的,我不能这样做——我必须创建一个我不需要的捆绑。
是否可以在 Symfony 4 中定义全局路由前缀,或者我最终会为每个根添加前缀/创建自定义路由加载器,特别是如果我在 YAML 中配置路由?
api - Symfony 4 中用于创建 API 的最佳捆绑包是什么?
Symfony 4 中用于创建 API 的最佳捆绑包是什么?
我计划在不使用 Symfony 的情况下使用 Vue.js 创建一个前端。
Symfony 4 文档中关于 api 创建 api 的最佳方式的页面并不多。
symfony4 - ApiPlatform + JwtAuthenticationBundle
我正在尝试在没有 FOSUserBundle 的 Symfony 4 应用程序之上使用 JwtAuthenticationBundle 配置 api 平台。
我希望能够使用 swagger 界面。
和我的安全文件:
如果我按照文档操作,我将看不到我的招摇页面,我在 /api 上有一个 401 - Bad credentials。我无法通过招摇 UI 上的“授权”按钮登录。我必须在访问控制部分替换:- { path: ^/, roles: [ ROLE_READER ] }
通过- { path: ^/, roles: [ IS_AUTHENTICATED_ANONYMOUSLY ] }
这样做。
我不知道我是否错过了/错过配置某些内容,或者文档中是否有错误
谢谢 !
symfony - 如何正确更新 Symfony3.3 到 Symfony4.X?
解释:
我无法将 symfony3 更新为 symfony4,无论我如何修复它们,它都会引发各种不同的错误。
我试过的:
我正在关注有关主要更新的官方文档,并确保我有 0 次弃用。
我更新了我composer.json
的如下:
错误:
您的要求无法解决为一组可安装的软件包。
问题 1 - 结论:删除 symfony/assetic-bundle v2.8.2 - 结论:不要安装 symfony/assetic-bundle v2.8.2 - 结论:不要安装 symfony/symfony v4.0.3 - 结论:不要安装 symfony /symfony v4.0.2 - symfony/assetic-bundle 的安装请求(锁定在 v2.8.2,需要为 ^2.8)-> 可由 symfony/assetic-bundle[v2.8.2] 满足。
现在,我继续卸载 symfony/assetic-bundle,但它给出了以下相同的错误:
- “symfony/swiftmailer 捆绑包”
- “sensio/framework-extra-bundle”
- “sensio/分发包”
- “incenteev/composer-parameter-handler”
然后当没有什么可以删除时(此时非常令人沮丧),它只是说:
问题 1 - 结论:不要安装 symfony/symfony v4.0.3 - 结论:不要安装 symfony/symfony v4.0.2 - 结论:不要安装 symfony/symfony v4.0.1 - sensio/generator-bundle v3.1.7需要 symfony/yaml [...]
- sensio/generator-bundle 的安装请求(锁定在 v3.1.7,要求为 ^3.0)-> 可满足 sensio/generator-bundle[v3.1.7]。
问题:
如何正确解决错误(如上所示)以及如何正确将 symfony 更新到 4.0?
composer.json 片段: