如何在Silex 2中发送可变路由到路由?

时间:2016-09-10 00:56:41

标签: php global silex

制作我的第一个Silex应用程序,我需要一些帮助,我正在写一条路线来显示一个项目,然后进行编辑,所以首先这是我的' get'接收项目代码以显示其详细信息的路线。

$app->get('/cat/productos_edit/{key}', function($key) use($app){

$app['twig']->addGlobal('itemtoedit', $key); //This is how I'm trying to do it

return $app['twig']->render('catalogo/productos/edit.html',[
    'title' => 'Catálogo - Productos'
  ]);
});

所以在' post' route我需要获取该变量来编辑项目,

 $app->post('/cat/productos_edit/', function() use($app){
    echo $app['itemtoedit'];
 })->bind('cat.productos.edit');

但后来我收到了这个错误:

Silex error

所以我想也许我错过了一些东西,希望ypu可以帮助我。

1 个答案:

答案 0 :(得分:3)

PHP / Silex不会在你的获取和发布之间保留任何上下文所以恕我直言你应该这样做:

$app->post('/cat/productos_edit/{key}', function($key) use($app){
    // get your item from database with its key
    // update item with your post payload
})->bind('cat.productos.edit');