8

この問題が発生したとき、Laravel3アプリをLaravel4に更新していました...

私が試したルート:

Route::get('backend/login', 'backend/UserController@login');
Route::get('backend/login', 'backend.UserController@login');
4

7 に答える 7

4

現時点では、Laravel 4 Beta 1では「のみ?」名前空間を使用します。

コントローラーファイルの例:app / controllers / backend / UserController.php

<?php namespace Controllers\Backend;

use Illuminate\Routing\Controllers\Controller;

class UserController extends Controller {

    // Note extends Controller and not BaseController

    // Your stuff
}
?>

したがって、ファイル内:app / routers.php:

<?php
Route::get('backend/login', 'Controllers\Backend\UserController@login');

それがより良い方法かどうかはわかりませんが、ここで働いています。編集とダンプ-「composer.json」の自動ロードは実際には機能しないようです。

誰かがそれを改善することができれば、彼は私の日を作るでしょう!:)

于 2013-01-25T10:09:37.130 に答える
2

Laravel 4 を使用する場合は、おそらくこれを確認する必要があります: ここで確認できるように、ルートのグループで使用する名前空間を指定できます: http://www.laravel-tricks.com/tricks /route-group-namespace

あなたのサンプルでは:

Route::group(array('prefix' => 'backend', 'namespace' => 'backend'), function()
{

    Route::get('login', 'UserController@login');

});

それは魅力のように機能します:)

私はそれを使用してきましたが、非常に優れています。コードをよりクリーンで理解しやすく保つのに役立ちます。試してみる!

于 2014-06-05T14:59:20.910 に答える
0

app/controllers ディレクトリにある私の管理コントローラ

class AdminController extends BaseController {
/**.
 * @return \AdminController
 */
    public function __construct()
    {

    }
}

これで、コントローラーフォルダー、つまり app/controllers/admin に admin という名前のフォルダーがあり、そこに AdminDashboardController.php という名前の別のコントローラーがあります。

class AdminDashboardController extends AdminController {

/**
 * Display a listing of the resource.
 *
 * @return Response
 */
    public function getIndex()
    {
    return View::make('admin/dashboard');
    }
    }

そして最後に私のRoute.phpファイル

Route::group(array('prefix' => 'admin'), function()
{
    # Admin Dashboard
    Route::controller('/', 'AdminDashboardController');
 });

お役に立てれば ..:-)

于 2014-04-21T19:55:46.687 に答える
0

ここで説明したように、Laravel 4.1 では、ルートのグループで使用する名前空間を指定できます

私はそれを使用してきましたが、非常に優れています。コードをよりクリーンで理解しやすく保つのに役立ちます。試してみる!

于 2014-06-03T10:54:17.863 に答える
0

することをお勧めします

Route::group(array('prefix' => 'backend'), function() {
    // Responds to Request::root() . '/backend/user'
    Route::resource('login', 'UserController');
});

詳細はこちら

Laravel 4 のネストされたリソース コントローラー Route::resource('admin/photo', 'PhotoController'); 動作していません

于 2013-01-29T20:43:55.983 に答える
-1

バックエンド/管理パネルを package..fruit for think に入れることもできます:)

于 2013-05-01T16:01:22.080 に答える