2012-09-27 2 views
0

드롭 다운 메뉴의 변경 사항을 데이터베이스에 저장하는 방법을 모르겠습니다.데이터베이스에서 드롭 다운 메뉴 업데이트 선택

데이터베이스에서 목록을 가져옵니다.

$list_categories = ORM::factory('category')->find_all()->as_array('category_id','category_name'); 

나는 데이터베이스에 이미 저장되어있는 카테고리를 선택합니다.

$selected_category = $edit_forum->category_id; 

드롭 다운 메뉴가 표시됩니다.

Form::select('category', $list_categories, $selected_category); 

의 그것 A는, B는 C를 B가 현재 선택한 카테고리이고, 나는 데이터베이스에 변경 사항을 저장하려면 A.로 변경하려는 나열 말하지만, 방법을 모르는 보자.

내가 현재 데이터베이스에 저장하려면 다음을 수행 다운 메뉴

$edit_forum->values($this->request->post()); 

    $errors = array(); 

    try { 

     $edit_forum->save(); 

     $this->request->redirect('acp/forums'); 

    } catch (ORM_Validation_Exception $ex) { 

     $errors = $ex->errors('validation'); 

    } 

(가) 위의 텍스트 필드를 잘 작동하지만 드롭.

편집 : 내 문제는 내가 category_id 변경할 수없는 것 같습니다. 누구나 어떻게 알아? category_id는 외래 ​​키입니다.

답변

0

알아 냈습니다. 내 경로, 규칙 및 라벨이 잘못되었습니다.

0
$edit_forum = new Model_Category($this->request->param('id')); 

    if (! $edit_forum->loaded()) 
     throw new HTTP_Exception_404("Category not found"); 

    if ($this->request->post()) 
    { 
     try 
     { 
      $edit_forum->values($this->request->post()) 
       ->update(); 

      //if you want to make redirection somewhere after update 
      //$this->redirect(''); 

     } 
     catch (ORM_Validation_Exception $e) 
     { 
      $this->view->errors = $e->errors(''); 
     } 
    } 

내가 원하는대로 맞으면. 희망이 도움이됩니다.

<select id="category" name="category_id"> 
    <option value="category_id">category_name</option> 
</select>