2013-07-07 1 views
0

Я довольно новыми для Laravel, но я, конечно, как Laravel 4. Я застрял в двух точках -Laravel 4 остальные апи маршрутизации без неявного действия и оставили присоединиться

  • Во-первых, - у меня есть non crud action method в контроллере, который должен выполнить левое соединение с двумя таблицами и вернуть результат. Есть две таблицы, сотрудники и департаменты. Я пытаюсь получить всех назначенных и не назначенных сотрудников для создания связи между ними. Этот метод действия находится внутри «EmployeeController». Он называется «allAssignedEmployees». Я попробовал следующий маршрут, но кажется, что это не работает:

    Route::resource('employees/assignedEmployees/{deptId}', '[email protected]');

  • Во-вторых, я не слишком-то уверен, что мой левый присоединиться. Ниже то, что я сделал из

    прибегая к помощи
     $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-запросы или общие логические операторы. Есть встроенная поддержка ведения журнала.

    Я знаю его много вопросов, но я уверен, что ответы помогут моему процессу обучения, следовательно, благодаря вашему времени.

ответ

0

Во-первых, я не груб, но вы должны были изучить документацию сначала, по крайней мере.

Сейчас подходит на ваши вопросы:

О контроллер ресурсов: 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 

Так что, если вы создали контроллер ресурса и получить маршруты, как сотрудники/{ID} будет обрабатываться диспетчерами показать метод. Но если вы хотите конкретный метод для обработки, то вы должны направить его как этот Route::get('employees/assignedEmployees/{deptId}',''[email protected]'');

И о протоколировании чтения here

+0

Спасибо за ответ :) Я читал documentation..by не-CRUD Я имел в виду конкретные методы действия, которые включают в себя особый тип запросов, как в предыдущем случае, левое соединение и т. д. Мне жаль, что я должен был более четко понять, что я имел в виду, например, не-crud (возможно, неявные действия, подобные документам) –

+0

Ваша проблема решена или нет? Если не какая именно проблема? –

+0

Привет, Рахул, проблема маршрутизации и ведения журнала решена, но проблема с левым соединением все еще существует :(Запрос выше ничего не возвращает .... Я не могу зарегистрировать запрос и не отлаживать дальше ... Kinda застрял там: (Спасибо за предоставление помощи ... –