2017-10-04 9 views
-1

나는 REST 서버를 만드는 오전 및라우팅 REST는 CodeIgniter는

가 정확히 어떻게 내가 갈 것 3. 회사 소유 엔드 포인트는 직원 (45)을 삭제해야하므로

DELETE /companies/3/employees/45 

같은 URL을 만들고 싶습니다 codeigniter를 사용하여 위의 URL을 만드는 방법. 에서

당신의 routes.php 새로운 경로 추가 :

+0

지금까지 시도한 것은 무엇입니까? – mega6382

+0

나는 실제로 어디서 시작 해야할지 모르겠다. 나는 끝점을 좋아한다/회사/3/회사/abc/3는 간단하지만 회사/3/직원/45는 모르겠다. 어디에서 내 코드를 작성해야하는지. –

답변

1

는 다음 시도 companiescontrolleremployees입니다

$route['companies/(:num)/employees/(:num)'] = 'companies/employees/$1/$2'; 

action입니다.

하고 controller

이 같은 행동 뭔가 쓰기 :이 PARAMS를 얻기 위해 CI 라우팅을 사용

//Use some kind of input validations for the Ids 
public function employees($companyId = 0, $employeeId = 0) 
{ 
    if(strtolower($_SERVER['REQUEST_METHOD']) == 'delete') 
    { 
     //delete query here 
    } 
} 

을하고, 요청의 메소드 호출에 사용되는 여부를 결정 $_SERVER 자동 전역 사용 DELETE입니다.

+0

http 동사가 routes.php 클래스 자체에서 가능하기 때문에 if 절을 추가 할 필요가 없으며 @elddenmedio에 지정된대로 수행 할 수 있습니다. –

1

먼저는

function delete () { 
    foreach($this->input->post() as $item => $value){ 
     ${$item} = $value;//making variables $employee_id, $company_id 
    } 
    //logic to delete 
} 

당신은 우편으로 그 정보를 보낼 필요가 like this link

는 그런 다음 컨트롤러 회사에서

$route["companies"]["delete"] = 'company/delete'; 

같은 경로를 만들 수있는 나머지 응용 프로그램을 만들 필요가 또는 거의 동일하게 보내십시오.

+0

당신은 맞습니다. 그러나 anwer가 처음 왔기 때문에 나는 포인트를 @ mega6382에게 주어야합니다. –