2014-10-03 5 views
-2

간단한 대답이 있어야하지만 여러 레코드가있는 배열에 필드를 추가 할 수 없습니다. 나는 하나의 레코드로 그것을 할 수 있지만 여러 레코드가 다릅니다. 아래 코드는 나에게 레코드를 저장할 수 없습니다. 다른 save 명령을 사용하여 레코드를 추가 할 수 있지만 추가 필드는 추가 할 수 없습니다.여러 레코드가있는 배열에 필드 추가

더 명확하게하기 위해 여러 레코드를 한 번에 저장할 수 있습니다. 사용자가 직접 추가 할 수있는 추가 필드를 추가해야하므로이 레코드에 필드를 수동으로 추가 할 수 있습니다.

문제는 관련 모델을 저장하고 싶지 않고 모델 1 개만 저장하므로 saveAssociated는 내가 원하는 것이 아닙니다. 나는 몇 가지 조사를했다 availabilityfortutors

http://book.cakephp.org/2.0/en/models/saving-your-data.html

cant save data from 1 table to another table

if ($this->request->is('post')) { 
      $this->Availtmp->create(); 
      $Availtmp = array('Availtmp' => $this->request->data['AvailabilityForTutor']); 

      $Availtmp['Availtmp'][0]['tutor_id'] = 2; //these fields I want to add in 
    // $Availtmp[1]['Availtmp']['tutor_id'] = 2; 

     debug($Availtmp[0]['tutor_id']) ; //this works but it wont save in saveAll 


      if ($this->Availtmp->saveAll($Availtmp)) {.. 
    //if ($this->Availtmp->saveAll($this->request->data['AvailabilityForTutor'])){//this works 

data 
array(
    'Availtmp' => array(
     (int) 0 => array(
      'weekday' => 'Monday', 
      'start_time' => array(
       'hour' => '09', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'end_time' => array(
       'hour' => '11', 
       'min' => '00', 
       'meridian' => 'pm' 
      ), 
      'id' => '99' 
     ), 
     (int) 1 => array(
      'weekday' => 'Tuesday', 
      'start_time' => array(
       'hour' => '09', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'end_time' => array(
       'hour' => '10', 
       'min' => '00', 
       'meridian' => 'pm' 
      ), 
      'id' => '100' 
     ), 
     (int) 2 => array(
      'weekday' => 'Wednesday', 
      'start_time' => array(
       'hour' => '12', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'end_time' => array(
       'hour' => '12', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'id' => '101' 
     ), 
     (int) 3 => array(
      'weekday' => 'Thursday', 
      'start_time' => array(
       'hour' => '12', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'end_time' => array(
       'hour' => '12', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'id' => '102' 
     ), 
     (int) 4 => array(
      'weekday' => 'Friday', 
      'start_time' => array(
       'hour' => '12', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'end_time' => array(
       'hour' => '12', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'id' => '103' 
     ), 
     (int) 5 => array(
      'weekday' => 'Saturday', 
      'start_time' => array(
       'hour' => '09', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'end_time' => array(
       'hour' => '11', 
       'min' => '00', 
       'meridian' => 'pm' 
      ), 
      'id' => '104' 
     ), 
     (int) 6 => array(
      'weekday' => 'Sunday', 
      'start_time' => array(
       'hour' => '12', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'end_time' => array(
       'hour' => '12', 
       'min' => '00', 
       'meridian' => 'am' 
      ), 
      'id' => '105' 
     ) 
    ), 
    (int) 0 => array(
     'Availtmp' => array(
      'tutor_id' => (int) 2 
     ) 
    ), 
    (int) 1 => array(
     'Availtmp' => array(
      'tutor_id' => (int) 2 
     ) 
    ), 
    (int) 2 => array(
     'Availtmp' => array(
      'tutor_id' => (int) 2 
     ) 
    ) 
) 
+0

그럼 더 많은 정보가 필요합니다. 나는 하나의 레코드에 대한 코드를 따랐다. 전에 다른 질문을했다. 나는 그것을 조사했고, 코드는 데이터를 저장하지만, 내가 할 일을하기 위해 필드를 추가하지 않는다. 문서에 요점은 아무것도 말하지 않습니까? – ajt

+0

관련 모델을 저장하고 싶지 않아 사람들을 혼란스럽게 생각합니다. Availtmp 모델 데이터를 저장하고 Availabikityforstudents를 저장하지 마십시오. SaveAssociated는 문제를 해결하지 못했습니다. – ajt

답변

0

을 저장할 그나마 그것을 당신이 다른 테이블에있는 모든 일을 다 기록 배열에 추가 필드를 추가하고 저장하지 못할 나타납니다. 레코드 배열이 있고 테이블을 복사 할 추가 필드가있는 다른 테이블 (모델)로 복사하려는 경우 행운이 없습니다.

관련 문제