問題タブ [symfony-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.

0 投票する
0 に答える
249 参照

php - ルートにクエリ文字列がある場合の Symfony の ResourceNotFoundException

奇妙な問題

したがって、私の管理バンドルには、次のようなルートがあります。

これは、次のページにアクセスするときにうまく機能します/media

クエリ文字列をルートに追加する場合を除きます。このように: /media?q=searchTest. 実際、管理バンドルの任意のルートに対してこれを行うと、常に返されますResourceNotFoundException

これがプレーンテキストのスタックトレースです

POST は機能しますが、クエリ文字列は何らかの理由で機能しません。

何か案は?

0 投票する
1 に答える
27 参照

symfony - 変数パスを定義済みパスで上書きする

route のページを作成するために fos userbundle を使用しています/profile。他のユーザーのプロファイルも表示できるようにしたいので、独自のコントローラーを作成して/profile/{username}.

私が今抱えている問題は、 fos userbundle path を使用できない/profile/editことです。それはパスを示していますroute:debug

ルート /profile/edit を例外にする方法はありますか?

ここに私のコントローラーがあります:

ありがとうございます:)

0 投票する
2 に答える
93 参照

php - Symfony2 ルーティング前のリダイレクト

高トラフィック/高 seo 重視のWebを開発しています。現在、アクションの開始時にリダイレクトを行っていますが、少し遅いです。

ルーティングの前にフックしてリダイレクトを行う方法はありますか (URL が 301 かどうかを知るために Redis クエリを実行しました)。たぶん、Symfonyの直前にそれを行っているのかもしれません。

0 投票する
2 に答える
498 参照

php - URI 値を使用してルーターのプレースホルダーをマップする

これを説明する方法はありませんので、お手柔らかにお願いします。

ルーターは uri 変数キーを保持します

ブラウザのアドレス バーの URI

ルーターのプレースホルダー変数を URI 一致値にマップするコードを作成するにはどうすればよいですか。例えば

ご理解いただけましたら、正しいリソースにリダイレクトしていただけますでしょうか。

0 投票する
2 に答える
623 参照

php - symfony2 でルーティングを確認する

symfony を学びたいと思い、小さなアプリケーションの作成を開始しました。ルートについて質問です。だから、私は自分のプロジェクトにルートを持っています:

/admin/homepage/admin/newsadmin/galery

いいえ、 url に書き込むと/admin、このルートは存在せず、エラーが発生しますNo route found for "GET /admin/"。たとえば、ルートが存在しないかどうかを確認し、別のルートにリダイレクトする方法はありますか? 事前にThxと私の英語で申し訳ありません私のルート:

0 投票する
4 に答える
15253 参照

php - Symfony 3はすべてのルートを現在のロケールバージョンにリダイレクトします

私はsymfonyアプリケーションに取り組んでおり、ユーザーがどのページにいてもページのロケールバージョンに移動することが目標です。

たとえば、ユーザーがホームページの「/」に移動すると、「/en/」にリダイレクトされます。

_localeそれらが「/admin」ページにある場合、プロパティがルートから設定されるように、「/en/admin」にリダイレクトされます。

また、ユーザーのブラウザから /admin にアクセスする場合はロケールを決定する必要があります。これは、ロケールが決定されていないため、リダイレクト先のページがわかるためです。

現在、テスト中のため、デフォルトのコントローラーは次のようになっています。開発モードとプロファイラーを使用して、翻訳が正しく機能していることをテストしています。

ここに画像の説明を入力

この現在の方法では、ユーザーがそこに移動すると「/」に留まりますが、「/en/」にリダイレクトしたいと考えています。これは、/admin や /somepath/pathagain/article1 (/en/admin 、 /en/somepath/pathagain/article1) などの他のページでも機能するはずです。

どうすればいいですか?

私が読んだ参考文献は役に立ちませんでした:

Symfony2 ルーティングでデフォルトのロケールを使用する (1 つの言語に対して 1 つの URL)

ルーティングにおける Symfony2 のデフォルトロケール

::アップデート::

私は自分の問題を解決していませんが、より効率的にするためのいくつかのトリックを学びました。

DefaultController.php

構成.yml

parameters の下の value に注意してくださいapp.locales: en|es|zh。これは、今後さらに多くのロケールをサポートする予定がある場合に、ルートを作成するたびに参照できる値です。これらのルートは、好奇心旺盛な人のために、英語、スペイン語、中国語の順です。注釈の DefaultController では、"%app.locales%"構成パラメーターを参照する部分です。

私の現在の方法の問題は、/ admin に行くことです。たとえば、ユーザーを /{browsers locale}/admin にリダイレクトしません。これは、すべてを整理するためのよりエレガントなソリューションになります...しかし、少なくともルートは機能します。まだより良い解決策を探しています。

****アップデート****

Athlan の回答である下の回答 (ロケールと要件をすべてのルートに追加 - Symfony2 )として、ここで回答を見つけた可能性があると思います。彼の指示が私には十分に明確ではなかったため、symfony 3 でこれを実装する方法がわかりません。

この記事も役立つと思います ( http://symfony.com/doc/current/components/event_dispatcher/introduction.html )

0 投票する
2 に答える
949 参照

php - ユーザーはフォームを送信しますが、登録またはログインするまで保存しません

ユーザーが単一のページに入力するフォームが多数ありますが、ユーザーが投稿した後、コントローラーはフォームが有効かどうかを確認し、ユーザーが既にログインしているかどうかを確認し、情報を保存します。

助けが必要

ユーザーがログインしていない場合は、登録ページにリダイレクトしてサインアップし、サインアップ後に自動ログインすると、同じコントローラーに投稿された値が返され、保存できるようになります。

  • $form->isValid && !$this->getUser()次に、セッションに保存されたこのフォームの値を使用して、ユーザーをサインアップ ページにリダイレクトしますか?
  • ユーザーがサインアップまたはログインした後、以前のコントローラーに戻って (それ以上のアクションは必要ありません)、以前に送信されたフォームを自動保存する必要があります。以来$form->isValid()

混乱しています。フォームの値をセッションに保存してリダイレクトする必要がありますか? モデル値を適切に保存しますか?

また、ログイン後に post メソッドで同じページに戻るように Symfony に指示しながら、ユーザーを登録ページにリダイレクトするにはどうすればよいですか。