2011-02-11 2 views
0

다양한 관계 유형에 대해 여러 레코드를 제출하는 함수를 만들고 있습니다. 내가 겪고있는 주된 문제는 배열의 형식입니다. 내 saveAll()이 내 다중 관계 설정에서 작동하도록하려면 배열이이 형식이어야합니다. 모델은 키 (첫 번째 배열)입니다.CakePHP 모델 인덱스 배열이 필요하지만 for 루프 카운터에서 생성 할 수 없습니다. 이를 위해 모델 색인 배열이 필요합니다.

내 질문은 : 1) 아래의 두 번째 배열의 두 번째 레이어에서 숫자 인덱스를 제거 할 수 있습니까?

이렇게 입력 필드를 반환합니다. 접두사가 붙은 카운터를 볼 수 있습니다 (이 두 번째 레벨에서 숫자 인덱스를 만드는 것으로 생각됩니다).

<?php echo $this->Form->input("$i.monthly_cost", array('label' => 'Monthly Cost')); ?> 

필드에 for 루프 카운터를 사용하고 있습니다. 그래서 내 질문 번호가 있습니다 : 값이 Cake의 saveAll()에서 작동하는 것으로 변경 될 수 있습니까? 모델은 키 (이 내가 필요로하는 형식입니다)입니다

<?php for ($i = 1; $i <= 2; $i++) { ?> 

예 :

Array 
(
[User] => Array 
    (
     [username] => billy 
    ) 
[Profile] => Array 
    (
     [sex] => Male 
    [occupation] => Programmer 
    ) 

내 복수의 입력 배열에 얻을 수있는 유일한 출력 (아래 디버그입니다() 덤프)

내 실제 출력 수치 색인 :

Array 
(
[Plan] => Array 
    (
     [1] => Array 
      (
       [plan_detail_id] => 36 
       [monthly_cost] => 0 
       [dental_cost] => 0 
       [age_id] => 14 
       [applicant_id] => 1 
       [state_id] => 1 
      ) 

     [2] => Array 
      (
       [plan_detail_id] => 36 
       [monthly_cost] => 0 
       [dental_cost] => 0 
       [age_id] => 2 
       [applicant_id] => 4 
       [state_id] => 1 
      ) 

    ) 

[1] => Array 
    (
     [1] => Array 
      (
       [Zip] => Array 
        (
         [0] => 487 
         [1] => 486 
         [2] => 485 
         [3] => 484 
         [4] => 483 
        ) 

      ) 

    ) 

[2] => Array 
    (
     [2] => Array 
      (
       [Zip] => Array 
        (
         [0] => 485 
         [1] => 484 
         [2] => 483 
        ) 

      ) 

    ) 
,

)

답변