PHPのMVCデザインパターンに関する質問があります。メソッドのない引数を渡すPHP MVC
Stack Overflowの質問にアクセスするとURLは「stackoverflow.com/questions/[id」になり、「Ask Question」に行くとURLは「stackoverflow.com/questions/ask」になります。
これは一般に、「質問」という名前のコントローラが読み込まれていることを意味します。「質問」は、コントローラが質問をするためにフォームを表示するように指示するメソッドです。しかし、あなたが質問をするとき、方法はありません、そうですか?代わりに質問のIDがあります。それはどのように機能するのですか?ページは最初に番号であるかどうかをチェックし、番号であれば質問コントローラのインデックスメソッドをロードし、そのIDをパラメータとして渡しますか?それが数字でないなら、それは方法として扱われますか?
ありがとうございました!
私はこの質問(http://stackoverflow.com/questions/10106279)にアクセスすると、そのサイトが質問コントローラの中で10106279というメソッドを実行しようとしているのではないのですか? –
そうです、MVCスタックには通常、ルーティングルールがあります。 URLの最後のセクションにIDとしてフラグを付けることができます。任意のルーティングロジックを適用することができます。ルート "/ beans"をコントローラ "johnny"に、アクション "rogers"に移動させることができます。 –
いつかあなたは何かをするモデルを持っていますが、ホームページからもそれを望んでいますので、あなたのホームページはサブページからモデルを呼び出します。天気予報のコントローラーを使ってどこからでもロードできます。それはリダイレクションだけど、私が言うデザインパスに従っている。 –