問題タブ [zend-framework-routing]
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.
regex - Zend Framework 2 の子正規表現とリテラル ルーティング
このstackoverflow question 15077075に基づいて、アプリケーションに正規表現ベースのルートがあることを達成したので、これをビューと編集アクションに渡すことができます。
- app/123 - アプリ コントローラー ビュー アクション (記事 ID で取得)
- app/name-of-article - アプリ コントローラー ビュー アクション (記事名で取得)
- app/123/edit - アプリ コントローラー編集アクション (記事 ID)
- app/name-of-article/edit - アプリ コントローラー編集アクション (記事名)
- app/search/{search-string} - アプリ コントローラーの検索アクション (現在、スペースと特殊文字を含まない検索文字列のみを受け入れます)
これは私が以下のコードで達成したもので、上記のリンクのコードに似ています:
私は2つの1つの問題を抱えています.1つ目は、URLビューヘルパーがルートを認識しないことです
/app/recent の代わりに /app を出力するだけです。
$action = 'search'
または$action = 'new'
/app のみを印刷する場合にも同じことが発生します
2つ目は、検索がコントローラーのアクションに認識され、スペースや特殊文字を入れると失敗することだけです
検索キーの制約に \s を追加しようとすると ( '[\sa-zA-Z0-9_-]+' )、編集機能にルーティングされます
探索ルートはこんな感じ
これへのルートを編集したところ、うまくいきました
コードスニペットが必要な場合は、何が欲しいかが明確であることを願っています。
php - ZF2 コントローラーのマッピングの問題
私はZendが初めてです。Csvなどzend.local
の新しいモジュールを作成しています。 zend.local/ csvのような URL に移動すると、次のエラーが表示されます。
私module.config.php
は以下です:
zend-framework - Zend 2.3 で管理モジュールを実行するにはどうすればよいですか?
私はグーグルで多くのことを試しましたが、そのための正しい解決策が見つかりませんでした. 誰でも私を助けることができますか?module.config
ルーティングを介してファイル コードを変更しようとしただけでなくapplication.config
、ファイルにモジュール名を追加しようとしましたが、機能していません。
致命的なエラー: D:\xampp\htdocs\myproject\vendor\zendframework\zendframework\library\Zend\Mvc\Router\SimpleRouteStack でメッセージ「Missing "type" option」を含む例外「Zend\Mvc\Router\Exception\InvalidArgumentException」がキャッチされない.php:269 スタック トレース: #0 D:\xampp\htdocs\myproject\vendor\zendframework\zendframework\library\Zend\Mvc\Router\Http\TreeRouteStack.php(163): Zend\Mvc\Router\SimpleRouteStack-> routeFromArray(配列) #1 D:\xampp\htdocs\myproject\vendor\zendframework\zendframework\library\Zend\Mvc\Router\Http\TreeRouteStack.php(113): Zend\Mvc\Router\Http\TreeRouteStack->routeFromArray (配列) #2 D:\xampp\htdocs\myproject\vendor\zendframework\zendframework\library\Zend\Mvc\Router\SimpleRouteStack.php(140): Zend\Mvc\Router\Http\TreeRouteStack->addRoute('controllers '、配列) #3 D:\xampp\htdocs\myproject\vendor\zendframework\zendframework\library\Zend\Mvc\Router\SimpleRouteStack.php(84): Zend\Mvc\Router\SimpleRouteStack->addRoutes(Array) #4 D:\xampp\htdocs\ myproject\vendor\zendframework\zendframework\library\Zend\Mvc\Router\Ht in D:\xampp\htdocs\myproject\vendor\zendframework\zendframework\library\Zend\ServiceManager\ServiceManager.php 行 909
php - ZF2 fromRoute がデフォルトのアクション名を返さない
次のようなリンクを作成します。
somesite.com/management/users/index/delete/10
management はモジュール名、users はコントローラー、index はアクション名、delete はレコードの ID を取得するパラメーターです。このリンクを作成するには、コードのこの部分を使用しています:
私の設定は以下のようなものです:
結果は次のとおりです。
somesite.com/management/users/delete/10
関数はデフォルトのアクションであるためアクション名を省略し、アクション名として削除を取得し、最終的に404エラーが発生します。ご覧のとおり、リンクから「削除」というフレーズを省略できないパラメーター「id」があります。URL から「delete」を省略することにより、ZF2 は「delete」ではなく「id」として入力を取得します。デフォルトのアクションも変更できません。URLにアクション名を入力するようにZF2に指示する方法はありますか?
php - ZF2: forward プラグインを使用しているときに、すべてのコントローラーの Request オブジェクトをグローバルに変更する方法は?
テストとパフォーマンスの目的で forward プラグインを使用しています。最初にIndexController
データは通常の POST リクエストを通過します。そこで、この要求と POST データを取得し、それにもう 1 つのパラメーターを追加する必要があります。
フォワードプラグインを使用するよりも
そして、私がこれにいるPortController
とき、私はリクエストの POST データを再度取得し、そこに私の変更を含める必要がありますIndexController
しかし、そうではありません。変更なしでリクエスト オブジェクトを取得します。
現在のリクエストプロセスですべてのコントローラのリクエストをグローバルに変更する方法は?
私はすでに何をしようとしていますか?
そして、このすべての差異は機能しません。
私はすでにこの回答を読んでいます ZF2: How to pass parameters to forward plugin which can then get in the method I forward to?
しかし、params を介してデータを渡したくありません。変更要求が必要です。
UPD
しかし、今私はテストされており、受信側でこの方法でリクエストを取得しようとしたためかもしれません
でもこんな風に使えばいいのに
これは、Apigility RPC サービスを使用し、JSON 形式で投稿データを POST ではなく Request Content フィールドに配置したためです。そして別の場所で私はそれを手に入れようとしました
しかし、私が POST を使い始めた後、それが混乱し始めた理由です。
php - AbstractRestfulController を拡張しながらメソッドに基づく ZF2 ルート
AbstractRestfulController
Zend Framework 2では、リクエスト タイプに基づいて、拡張するコントローラで指定されたアクションにいくつかの動的 URL をルーティングしようとしています。問題は、 がこれらのルートをデフォルト アクションなどにオーバーライドし続けるAbstractRestfulController
ことです。get()
getList()
私のルートは次のとおりです。
私のルーター構成は次のとおりです。
そして、私のコントローラーには次のアクションがあります。
AbstractRestfulController
他のリクエストタイプがこのコントローラーに許可されないように、またはデフォルトルートをオーバーライドするように、具体的にこのようにルーティングするにはどうすればよいですか?
また、この Zend コントローラーを拡張するより一般的なコントローラーを実際に拡張しているため、このコントローラーを拡張し続けたいと思います。