Laravel5メソッドインジェクションを他のパラメーターで使用する

キャプテンハイパーテキスト

だから私は管理インターフェースに取り組んでいます。私は次のようにルートを設定しています:

Route::controllers([
    'admin' => 'AdminController',
]);

それから私はいくつかの方法でコントローラーを持っています:

public function getEditUser($user_id = null)
{
    // Get user from database and return view
}

public function postEditUser($user_id = 0, EditUserRequest $request)
{
    // Process any changes made
}

ご覧のとおり、メソッドインジェクションを使用してユーザー入力を検証しているため、URLは次のようになります。

http://example.com/admin/edit-user/8697

GETリクエストはGETメソッドに送られ、POSTリクエストはPOSTメソッドに送られます。問題は、新しいユーザーを作成する場合、IDがないことです。

http://examplecom/admin/edit-user/

次に、エラーが発生します(言い換えます):

コントローラに渡される引数2は、EditUserRequestのインスタンスである必要があり、指定されていない

だから今私は新しいユーザーを作成するためにそれを機能させるために0のIDを渡していますが、このアプリはまだ始まったばかりなので、アプリケーション全体でこれを行う必要がありますか?検証メソッド、およびオプションでパラメーターを渡すためのより良い方法はありますか?どんな知恵も高く評価されます。

Lukasgeiter

パラメータの順序を逆にして、オプションのパラメータを終了することができます。

public function postEditUser(EditUserRequest $request, $user_id = null)
{

}

LaravelはEditUserRequest最初の問題を解決し、user_idがない場合はそれ以上何も渡さないため、デフォルト値が有効になります。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

メソッドパラメータインジェクションにCDIを使用する方法

分類Dev

ジェネリックスパラメーターと戻り値型メソッドを持つJavaでリフレクションを使用してクラスのインスタンスを取得する方法

分類Dev

Java、継承、ジェネリックス-テンプレートメソッドの実装でサブタイプのパラメーターを使用する

分類Dev

(laravel)id以外のフィールドを渡すことでメソッドインジェクションを使用することは可能ですか?

分類Dev

ジェネリックのメソッドでパラメータとしてコレクションクラスを渡すことができません

分類Dev

C#リフレクションを使用して、ジェネリックListパラメーターで拡張メソッドを呼び出す方法は?

分類Dev

セッターインジェクションで欠落しているメソッドを無視する

分類Dev

複数のオプションのパラメーターを持つJavaでジェネリックメソッドを持つことが可能です。

分類Dev

@Overrideアノテーションなしでスーパークラス/インターフェースメソッドをオーバーライドするすべてのメソッドを見つける方法は?

分類Dev

配列を使用するメソッドのインスタンス化されたオブジェクトをパラメーターに使用する方法

分類Dev

リフレクションを使用してメソッドのFunc <>パラメータを特定する

分類Dev

ファンクショナルインターフェイスパラメータータイプのメソッドのJavaジェネリック

分類Dev

共通のcreateValueメソッドを定義するパラメーターを持つケースクラスのシェイプレスのジェネリックデフォルトインスタンスを使用してビルドします

分類Dev

インターフェイスメソッドがC#のジェネリック型パラメーターを使用して別のメソッドの型を返すようにすることは可能ですか?

分類Dev

インターフェイスのディクショナリをメソッドパラメータとして使用しようとすると、コンパイラが派生クラスからそのインターフェイスに変換できないのはなぜですか?

分類Dev

コンパイラーは、ジェネリックメソッドのnullパラメーターで異なる動作をします。

分類Dev

Laravelコレクションマップメソッドに追加パラメータを設定する方法

分類Dev

Javaのオプションオブジェクトからパラメータを使用してメソッドを呼び出す方法

分類Dev

ジェネリックコレクションでオーバーライドされたメソッドの型ヒントを指定する

分類Dev

Javaリフレクションを使用したジェネリックパラメーターを使用したメソッドの呼び出し

分類Dev

JAVAのエンタープライズアプリケーションで静的メソッドを使用する

分類Dev

リフレクション:ジェネリックパラメーターを使用してメソッドを呼び出す

分類Dev

ジェネリック式とアクションをパラメーターとして使用してメソッドを呼び出す

分類Dev

多くのJava Streamインターフェースメソッドが、ジェネリック型の代わりに下限のワイルドカードをパラメーターに使用するのはなぜですか?

分類Dev

クラスの他のメソッドでコンストラクターで初期化されたオブジェクトを使用する方法

分類Dev

リフレクションを使用して、インターフェイスまたは抽象クラスのすべてのメソッドを取得する

分類Dev

ジェネリックパラメーターを受け入れるメソッドにRawタイプのコレクションオブジェクトが渡されると、ジェネリックIterator <E>の動作が異なる

分類Dev

セッターとしてではなくGuiceメソッドインジェクションを使用

分類Dev

オーバーライドされたメソッドの戻りパラメーターでジェネリック構文によるリフレクションが失敗する

Related 関連記事

  1. 1

    メソッドパラメータインジェクションにCDIを使用する方法

  2. 2

    ジェネリックスパラメーターと戻り値型メソッドを持つJavaでリフレクションを使用してクラスのインスタンスを取得する方法

  3. 3

    Java、継承、ジェネリックス-テンプレートメソッドの実装でサブタイプのパラメーターを使用する

  4. 4

    (laravel)id以外のフィールドを渡すことでメソッドインジェクションを使用することは可能ですか?

  5. 5

    ジェネリックのメソッドでパラメータとしてコレクションクラスを渡すことができません

  6. 6

    C#リフレクションを使用して、ジェネリックListパラメーターで拡張メソッドを呼び出す方法は?

  7. 7

    セッターインジェクションで欠落しているメソッドを無視する

  8. 8

    複数のオプションのパラメーターを持つJavaでジェネリックメソッドを持つことが可能です。

  9. 9

    @Overrideアノテーションなしでスーパークラス/インターフェースメソッドをオーバーライドするすべてのメソッドを見つける方法は?

  10. 10

    配列を使用するメソッドのインスタンス化されたオブジェクトをパラメーターに使用する方法

  11. 11

    リフレクションを使用してメソッドのFunc <>パラメータを特定する

  12. 12

    ファンクショナルインターフェイスパラメータータイプのメソッドのJavaジェネリック

  13. 13

    共通のcreateValueメソッドを定義するパラメーターを持つケースクラスのシェイプレスのジェネリックデフォルトインスタンスを使用してビルドします

  14. 14

    インターフェイスメソッドがC#のジェネリック型パラメーターを使用して別のメソッドの型を返すようにすることは可能ですか?

  15. 15

    インターフェイスのディクショナリをメソッドパラメータとして使用しようとすると、コンパイラが派生クラスからそのインターフェイスに変換できないのはなぜですか?

  16. 16

    コンパイラーは、ジェネリックメソッドのnullパラメーターで異なる動作をします。

  17. 17

    Laravelコレクションマップメソッドに追加パラメータを設定する方法

  18. 18

    Javaのオプションオブジェクトからパラメータを使用してメソッドを呼び出す方法

  19. 19

    ジェネリックコレクションでオーバーライドされたメソッドの型ヒントを指定する

  20. 20

    Javaリフレクションを使用したジェネリックパラメーターを使用したメソッドの呼び出し

  21. 21

    JAVAのエンタープライズアプリケーションで静的メソッドを使用する

  22. 22

    リフレクション:ジェネリックパラメーターを使用してメソッドを呼び出す

  23. 23

    ジェネリック式とアクションをパラメーターとして使用してメソッドを呼び出す

  24. 24

    多くのJava Streamインターフェースメソッドが、ジェネリック型の代わりに下限のワイルドカードをパラメーターに使用するのはなぜですか?

  25. 25

    クラスの他のメソッドでコンストラクターで初期化されたオブジェクトを使用する方法

  26. 26

    リフレクションを使用して、インターフェイスまたは抽象クラスのすべてのメソッドを取得する

  27. 27

    ジェネリックパラメーターを受け入れるメソッドにRawタイプのコレクションオブジェクトが渡されると、ジェネリックIterator <E>の動作が異なる

  28. 28

    セッターとしてではなくGuiceメソッドインジェクションを使用

  29. 29

    オーバーライドされたメソッドの戻りパラメーターでジェネリック構文によるリフレクションが失敗する

ホットタグ

アーカイブ