4

デフォルトの getIndex restful コントローラー関数で /index を削除することは可能ですか?

コントローラーの定義済みルート:

Route::controller('registration', 'RegisterController', array(
  'getIndex' => 'getRegister'
)); 

コントローラ:

class RegisterController extends UserController {

  public function getIndex()
  {
    // Show the register page
    return View::make('register');
  }
}

たとえば、私の login.blade.php には次のものがあります。

{{ HTML::link(URL::route('getRegister'), 'New User?', array('title' => 'Novi korisnik?', 'class'  => 'wideBtn', 'id' => 'userRegisterLink')) }}

返された結果は次のようなリンクです: http://mydomain.com/registration/index

URL::route() 経由でルート名を使用してリンク URL を取得することを好み、返されるリンクを次のようにシンプルにしたい: http://mydomain.com/registration

ありがとう

4

2 に答える 2

3

あなたの routes.php ファイルで:

<?php

Route::get('/one', 'OneController@getIndex');
Route::get('/two', 'TwoController@getIndex');
Route::get('/', 'HomeController@getIndex');

Route::controller('/one', 'OneController');
Route::controller('/two', 'TwoController');
Route::controller('/', 'HomeController');

任意のビューで:

{{ action('HomeController@getIndex') }} will now return http://example.com/
{{ action('OneController@getIndex') }} will now return http://example.com/one
{{ action('TwoController@getIndex') }} will now return http://example.com/two

残りのコントローラー メソッドは同じようにマッピングされます。それらがルートを取得していることを確認してください(または、メソッド/ポストメソッドである必要がある場合)。そして、それらがコントローラーメソッドマッピング呼び出しの前にあること。http://example.com/indexリンクはもう必要ありません。

于 2014-06-30T05:17:46.817 に答える