0

私はLaravelにはかなり慣れていませんが、確かにLaravel 4が好きです.2つの点で立ち往生しています-

  • 1つ目は、2つのテーブルで左結合を実行して結果を返す必要があるコントローラーに、非クラッドアクションメソッドがあることです。Employees と Departments の 2 つのテーブルがあります。割り当てられた従業員と割り当てられていない従業員をすべて取得して、それらの間の関連付けを作成しようとしています。このアクション メソッドは「EmployeeController」内にあります。「allAssignedEmployees」という名前です。次のルーティングを試しましたが、うまくいかないようです:

    Route::resource('employees/assignedEmployees/{deptId}', 'EmployeesController@assignedEmployees');

  • 第二に、左の結合についてあまり確信が持てません。以下は私がグーグルで作ったものです

           $unassignedEmployees = DB::table('employee')
            ->join('department', function($join)
            {
                $join->on('department.employee_id', '=', 'employee.id');
            })
            ->where('department.id', '=', $deptId)
            ->get();
    

    どうやら私がSQLで望んでいたのは -select * from employee emp left join department dept on dept.employee_id = employee.id and employee.dept_id = 2

    私が念頭に置いていた未回答の他の関連する質問は、Laravel 4にログインする方法は? 特に SQL クエリまたは一般的なログ ステートメント。組み込みのロギング サポートはありますか。

    たくさんの質問があることは承知していますが、答えが私の学習プロセスに役立つと確信しているので、お時間をいただきありがとうございます。

4

1 に答える 1

0

まず、私は失礼ではありませんが、少なくとも Documentation First を勉強しておくべきでした。

今あなたの質問に来ます:

リソース コントローラーについて: Route::resource('employees', 'EmployeesController');

この単一のルート宣言により、複数のルートが作成され、従業員リソースに対するさまざまな RESTful アクションが処理されます。同様に、生成されたコントローラーには、これらの各アクションのスタブ化されたメソッドが既にあり、それらが処理する URI と動詞を通知するメモが付いています。

リソース コントローラによって処理されるアクション

Verb        Path                  Action        Route Name

GET         /employees            index         employees.index
GET         /employees/create     create        employees.create
POST        /employees            store         employees.store
GET         /employees/{id}       show          employees.show
GET         /employees/{id}/edit  edit          employees.edit
PUT/PATCH   /employees/{id}       update        employees.update
DELETE      /employees/{id}       destroy       employees.destroy

したがって、リソース コントローラーを作成した場合、employees/{id} などの get ルートはコントローラーの show メソッドによって処理されます。ただし、特定のメソッドを処理する場合は、次のようにルーティングする必要があります Route::get('employees/assignedEmployees/{deptId}',''EmployeesController@assignedEmployees'');

ロギングについては、こちらをお読みください

于 2013-07-08T05:47:47.190 に答える