问题标签 [mezzio]
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 - 如何在一个请求中获取所有类别
如何在一个请求中获取所有类别?
我正在使用这个映射:
我的实体定义:
我的存储库方法:
使用 php 输出var_dump
:
我的观点:
所以有三个额外的数据库查询......
zend-framework - 在使用 Zend\Form\Annotation\AnnotationBuilder 构建的表单上注入依赖项
我正在尝试用教义替换zend 表达专辑教程中的 Zend_Db 用法。最重要的是,我想用一个用zend form annotationbuilder构建的表单来删除相册表单和表单工厂。我让 annotationbuilder 工作并收到一个工作表单。
在教程中,表单在album.global.config中定义为依赖:
...并注入动作AlbumUpdateFormAction.php
和AlbumUpdateFormHandleAction.php
:
由于使用了“处理操作”,因此需要这样做。如果表单验证发生错误,则调用下一个中间件。现在,提取并显示表单元素的错误消息if ($this->albumForm->getMessages()) {
这正是我的问题。我让表单工作,但是当调用下一个中间件时,Album\Action\AlbumUpdateHandleAction::class
我的表单是空的,因为我在两个中间件中“从头开始”生成它。我需要做的是,要么将我的 annotationuilder 构建形式定义为依赖项并将其注入中间件,要么将其从一个中间件传递到另一个中间件。
但我不知道如何做到这一点。任何想法都非常受欢迎!
我希望,我已经说清楚了。我必须承认,我对 zend expressive 和相关概念还很陌生。提前致谢, LT
php - Zend 表达 + 教义自定义类型
我正在尝试将自定义类型映射到字符串。这是我的实体定义:
但是当我尝试创建迁移(迁移:差异)时,这是输出
[Doctrine\DBAL\DBALException]my_type_enum
请求的未知数据库类型,Doctrine\DBAL\Platforms\PostgreSQL92Platform
可能不支持它。
似乎我需要使用 将我的自定义类型映射my_type_enum
到一个字符串mapping_types
,但是 Zend Expressive 在哪里?看来我的配置被忽略了
php - 将 Zend Diactoros PhpInputStream (PSR-7 StreamInterface) 包装的流传递给类似 fopen 的函数?
我必须编写一些东西来处理通过 POST 发送的 XML 文档。该文档内部包含 base-64 编码的二进制文件,因此请求可能非常大。
这有效:
但我正在使用 Zend Diactoros PSR-7 实现,所以我真的应该做这样的事情:
但是,这会导致流被转换为导致错误的字符串。
我真正需要的是:
因为:
但注意->stream
是受保护的。我应该扩展Zend\Diactoros\PhpInputStream
并编写一个公共方法来公开->stream
吗?或者,还有更好的方法?
请注意:我正在寻找基于流的解决方案;不要将整个流作为字符串读入内存。
php - 在 Zend Expressive 中的某些操作上布局不渲染?
是否可以在一个动作(或一组动作)中设置布局不渲染?
据我所知,我可以在配置中设置默认布局,它将在每个页面上呈现。我可以在 Action bay 中更改它,传递带有值的 'layout' 变量,但是有可能根本不渲染布局吗?
php - 调用未定义函数 Zend\Mail\Header\iconv_mime_decode()
目前我正在使用 Zend Expressive 开发一个应用程序。我正在使用zend-mail 发送注册电子邮件。
但是,这里的代码:
我收到了上述错误消息。ICONV 已安装并正在运行。
下面是这个函数的调用代码:
问候,虚幻
php - 使用 Dice - Zend Diactoros 和 Fast Route 的依赖注入器
我在一个小项目中使用 Dice(一个不错的 Dependency Injector)。我还在使用 PSR7 Zend Diactoros 来处理请求和 nikic 快速路由。
我使用文档中的示例让 Dice 为 Twig、DB 和我的所有其他类工作,但我无法弄清楚如何使用它将 Request $request 传递给我的控制器。
如果您至少可以为我指出如何正确使用依赖注入器来处理此类用例,我将不胜感激
控制器代码:
应用程序初始化代码:
在路由器代码中:
其中 $this->app->di 是 Dice 而 $handler 是
1因为我的路由没有参数第一个错误是我传递给几个参数,所以我尝试在路由器中执行此操作,它调用控制器的索引方法并传递 $request
2现在我通过了我的参数,但错误是
我有一种感觉,我使用这一切都错了,也许 Di 需要创建,$midEngine
因为现在我自己创建了一个响应和请求对象。
任何建议都会很好,我正试图围绕一个迷你框架应该如何围绕一个 Di 旋转。
谢谢,亚历克斯
php - Zend Expressive 中的主机名路由
Zend Expressive 有 Aura.Router、FastRoute 和 zend-mvc 路由器的适配器,并且路由可以轻松匹配方法和路径:
使用zend-mvc 路由器组件可以匹配主机名:
这也可以通过 Symfony路由组件实现:
因此,我希望能够使用 Expressive 做类似的事情,并根据子域将请求分派到不同的中间件:
提前致谢!
mezzio - Zend expressive - php 错误报告
我正在尝试 zend expressive,这是我的config/autoload/zend-expressive.global.php
,当我尝试对将转到操作类的路径发出请求时,它返回了错误页面,但我在 apache 错误日志中看不到任何 php 错误。所以我不能说是什么问题。
zend-expressive 有没有办法记录那些 php 错误日志?还有关于zend expressive的任何好的文档吗?似乎官方文档并没有太多的例子。
mezzio - zend expressive - 中间件检查是否有下一个可用?
在我的 routes.global.php 中,我在路由中有这个。
我有这个 return $next($request, new JsonResponse($data)); 在 Test1Action 类的末尾,因此它将数据发送到下一个操作。
但是在 Test1Action 里面有没有办法检查之后是否有另一个动作?
也许还有另一种方法,所以如果后面有一个,我可以执行上述返回,或者返回 json 响应仪式。
返回新的 JsonResponse($data);
这样我既可以单独使用 Test1Action 也可以在其他操作之前将其插入。
我尝试了几个选项,但没有奏效。任何帮助都会很棒。谢谢。