マルチアップロードでフォームを使用しています。私の addAction は、ダウンロードしたファイルに関する情報をデータベースに保存し、配列 lastInsrtId() 値を取得します。アップロードが成功した場合は、editAction にリダイレクトする必要があります。ここで、ユーザーはダウンロードしたファイルのリストを表示し、このファイル リストを使用して、ダウンロードした各ファイルの画像のタイトル、説明、alt 属性などのファイル属性を編集できます。ルートで値の配列を渡すにはどうすればよいですか? これが私のコードaddActionです:
// upload success
$fileIds = $this->getContentService()->makeFiles($parent, $data);
return $this->redirect()->toRoute('sc-admin/file/edit', array('ids' => $fileIds));
編集するファイルのリストを表示するルートの定義は次のとおりです。
'edit' => array(
'type' => 'segment',
'options' => array(
'route' => '/edit[/:ids]',
'defaults' => array(
'controller' => 'sc-file',
'action' => 'edit',
),
),
),
しかし、それは editAction のエラーを生成します
rawurlencode() expects parameter 1 to be string, array given
パラメータが値の配列を渡すために必要なときはいつでもセッションを使用したくありません。これは単にルーティングの問題であるためです。