问题标签 [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 - Webpack Encore:如何包含来自 /vendor 的 js 并在全球范围内使用?
如何包含 /vendor 文件夹中的资产,以便我可以在全球范围内使用它?
我的 base.html.twig:
在我的 webpack.config 中,我有:
其中 onePageJSVolder 是 /vendor 文件夹的有效 url:
但我收到错误 App 未定义。(来自base.html.twig)。App 在apps.js 中声明,但不被全局识别。
如何解决?
我正在运行 Symfony-BETA4
php - Symfony Flex:symfony.lock 文件有什么作用?
安装后symfony/serializer
,我发现我的symfony.lock
文件已更改:
据我了解,它是由 Symfony Flex 引入的,但它与它有什么不同composer.lock
,为什么还需要它?
symfony - Symfony 4:Dotenv::populate 返回无
我正在尝试在生产环境中运行 Symfony4 应用程序,但出现以下错误:
在本地应用程序运行良好。一旦它投入生产,它就会中断。
知道为什么会发生这种情况吗?
mongodb - 未找到使用 Symfony 4 和 MongoDB / 服务的新项目
我正在尝试使用 MongoDB 创建一个新的 Symfony4 项目。
首先,我使用此文档创建了一个 Symfony4 项目: https ://symfony.com/doc/current/setup.html
然后我使用以下文档包含了 MongoDB:http: //symfony.com/doc/current/bundles/DoctrineMongoDBBundle/index.html
我尝试尽可能地按照说明进行操作(例如,我不需要向 app/AppKernel.php 添加任何内容,但 MongoDB 会自动添加到 config/bundles.php)。
现在我认为一切都应该工作,但我的 Symfony 应用程序没有找到 MongoDB 服务:
控制器:
但是,如果我在控制台上执行此操作:
我得到一个服务列表,其中包括:
所以服务似乎在那里,但 Symfony 无法从我的应用程序中加载它。
知道我该如何解决这个问题吗?Mongo-DB 服务器连接是否可能不起作用并且由于某种原因它没有被记录并且服务不会加载?
symfony - Symfony 4 捆绑包工作
如何在 Symfony 4 上创建库包?
在 Symfony 3 中,我使用此命令:php bin/console generate:bundle
但在新版本中不起作用。并且可以使用像 Symfony 3 这样的包,例如,如果不可能,我有博客包和电报机器人包如何在 Symfony 4 中模拟?
symfony - Symfony 4:如何组织文件夹结构(即你的业务逻辑)
在Symfony 最佳实践中,建议不要使用包来组织业务逻辑。
仅当其中的代码打算在其他应用程序中按原样重用时,才应使用捆绑包:
但是捆绑包意味着可以作为独立软件重用的东西。如果 UserBundle 不能在其他 Symfony 应用程序中“按原样”使用,那么它不应该是它自己的包。
所以,当我将我的应用程序从 Symfony 3.3 升级到 Symfony 4 时,我认为这是重新组织我的代码的正确时机。
目前我遵循“捆绑结构”:
现在,有了新的目录结构,我应该如何组织我的代码?
我想这样组织它:
但是,这是正确的吗?Symfony 4 和 Flex 的预期文件夹结构有什么问题吗?
或者更好的是这样的:
这同样适用于项目目录结构中描述的其他根文件夹(关于如何覆盖它)。
在决定我的新文件夹结构时,是否有任何规则或限制需要考虑?
试图解决问题
所以,为了解决这个问题,我会更深入地研究文档,我会在这里写下我会发现的东西。
- 控制器:使用细粒度的控制器配置。
- 枝条:
- 实体:使用
orm.entity_managers.some_em.mappings.mapping_name
composer-php - symfony 4.0 安装assetic-bundle 失败
我正在尝试这个新的 symfony 4.0,所以我没有安装assetic-bundle,我使用的命令
我遇到了一系列问题:
我遇到了四个这样的问题(我只考虑了第一个的重要部分,因为它们很长)我在 json 文件中的要求:
收到您的来信,谢谢^_^
php - Symfony 4 AuthenticationUtils
我正在尝试根据 symfony.com 的教程使用 symfony 4 创建用户登录。
我使用了带有以下代码的基本 services.yaml 文件。
https://symfony.com/doc/current/security/form_login_setup.html
错误:
控制器“App\Controller\SecurityController::loginAction()”要求您为“$authUtils”参数提供一个值。参数可以为空并且没有提供空值,没有提供默认值,或者因为在此参数之后有一个非可选参数。
我不知道如何解决这个问题。有人有建议吗?
php - How does Symfony's autowiring work behind the scenes?
This is not about instructions (the docs are sufficient), but a question of how things work.
Symfony 4's autowiring system allows us to auto-inject services by simply typehinting
To gain a deeper understanding of PHP, I have looked around in the symfony-bundle source code but can't find the spot where the "magic" happens.
How can Symfony prevent PHP from protesting that not enough arguments were fed to the constructor (or any function that uses autowiring)?
symfony - Symfony:允许对子路由进行基本身份验证 - 多个防火墙
我的 Symfony 4 应用程序有一个主防火墙。它被配置为从数据库加载用户并使用登录表单等,所有标准的东西。它工作正常。
这是我当前的 security.yaml 文件:
现在我需要在其中包含动态信息的特定路由上添加基本身份验证,这就是我苦苦挣扎的地方。一个示例 URL 是:
http://myapp.com/repositories/%%username%%/directory/file.json
因此,最多http://myapp.com/由标准登录表单保护和验证。
但如果请求是 ^/repositories/%%username%% 我需要使用基本身份验证。
%%username%% 是动态的,如您所见,它是指向将作为 JSON 响应的文件的路由。基本身份验证实际上不必为 symfony 进行身份验证,它只需要可用并且如果失败则返回正确的异常/响应:
array('fatal: Authentication failed', 'remote error: Invalid username or password.')
任何帮助将非常感激。
谢谢
** 编辑**
好的,伙计们,我已经设法弄清楚如何在基于表单的身份验证旁边为子路由添加基本身份验证。
现在我只需要弄清楚如何为动态路由启用基本身份验证。
目前以下 security.yaml 涵盖http://myapp.com/repositories,任何成功登录的人都可以访问下面的所有路由。
但是我现在需要做的是限制 /repositories/%%username%% 使用基本身份验证,并且只授予对某些凭据的访问该目录的权限。
谢谢