Silex - 在完成中间件中获得正确的条件

时间:2017-01-10 07:02:19

标签: symfony silex

我想用一些与路径相关的数据

创建一个pdf文件
{http://example.com/products/123/?action=update}

$app->finish(function (Request $request, Response $response) {

    // Make a pdf file, only if:
    // - the route is under  /products/
    // - the action is update
    // - the subsequent ProductType form isSubmitted() and isValid()
    // - the 'submit' button on the ProductType form isClicked()

});

作为正常的表单提交流程,我有:

public function update(Application $app, Request $request)
{
    $form = $app['form.factory']->create(ProductType::class, $product);

    $form->handleRequest($request);

    if ($form->isSubmitted() && $form->isValid()) {

        if (!$form->get('submit')->isClicked()) {
            return $app->redirect('somewhere');
        }

        $product = $form->getData();

        $app['em']->persist($product);
        $app['em']->flush();

        return $app->redirect('product_page');
    }

    return $app['twig']->render('products/update.html.twig', array(
        'form' => $form->createView(),
    ));
}

的问题:

  1. 我应该复制finish中间件中的所有条件吗?
  2. 如何访问Product中间件中的finish实体?
  3. 考虑使用多种资源类型,例如产品,服务,用户......

0 个答案:

没有答案