0
これまでは、URLのリクエストパラメータとして整数値のみを扱ってきました。
今、私は、たとえばなどスペースを含む文字列で作業する必要があります。 「XYZ 666 888-VCT」
私は私のビュースクリプトのうち、ルートとパラメータを送信:
<a href="<?= $this->url('pcb', ['action' => 'index', 'id' => $rs->Part_Number]) ?>">PCB</a>
私はコントローラのアクション内でそれを取得しようとします:
$id = $this->params()->fromRoute('id');
この場合、文字列値をキャッチする正しい方法はありますか?
編集: ここに追加私のルーティング偶然に:
'pcb' => [
'type' => Segment::class,
'options' => [
'route' => '/pcb[/:action[/:id]]',
'constraints' => [
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
'id' => '[a-zA-Z][a-zA-Z0-9_-]*',
],
'defaults' => [
'controller' => Controller\PcbController::class,
'action' => 'index',
],
],
],
は、私は次のように私のURLが見え
をルーティングすることにより
要求されたURLが一致しませんでした常に得る: ... pcb/index/3441 99901 B 03 2519 xyz
問題はスペースであると確信していますので、もう少し詳しく質問してください。解決しよう
、そうではありませんか? – gsc
ルートオプション配列の 'constraints'キーが失敗する可能性があります。整数値は '[0-9] *'のようなものを使用します。他のルートから設定します。 – avy
ファイルがインポートされ、この文字列が唯一の識別情報であるため、文字列でなければなりません。法的理由により、このファイルを変更したり、追加の列を取得することはできません。 –