2012-03-07 3 views
0

배열에 teamleads 목록이 있고 다른 배열에 해당 팀 구성원이 있습니다.
각 팀 리더마다 해당 팀 구성원이 teamleads 및 팀 구성원을 선택해야하는 단일 드롭 다운 목록에 나열되도록 배열로 그룹화해야합니다. teamlead2
cakephp의 배열에 값을 그룹화하는 방법은 무엇입니까?

Array 
(
[6] => teammember3 
[7] => teammember4 
) 

의 teamlead1

Array 
(
    [4] => teammember1 
    [5] => teammember2 
) 

팀 구성원 배열의
teamlead를 배열

Array 
(
    [1] => teamlead1 
    [2] => teamlead2 
) 

팀 멤버 배열은 내가

로 나열 할 필요가
[TeamLead1] => Array 
    (
     [0] => Array 
      (
       [1] => TeamLead1 
      ) 
     [1] => Array 
      (
       [4] => teammember1 
       [5] => teammember2 
      ) 

    ) 

[TeamLead2] => Array 
    (
     [0] => Array 
      (
       [2] => TeamLead2 
      ) 
     [1] => Array 
      (
       [6] => teammember3 
       [7] => teammember4 
      ) 

    ) 

도와주세요.

답변

0

리스트로 배열을 가져옵니다 : 선택 필드를 조작 할 수

$this->Form->input('team_member', array('options' => $teams)); 

UPDATE 당신은 자바 스크립트/CSS가 필요합니다 :

$this->set('teams', $this->TeamMembers->find('list')); 

이 그런 형태로 당신이 옵션을 설정할 수 있습니다 당신이 요구하는 것을하기 위해서. 현재 설정 한 태그 중 어느 것도 당신이 찾고있는 답변을 얻을 수 없습니다. 이것은 일반적인 HTML/PHP 코드로는 불가능합니다.

+0

그냥 팀원이 드롭 다운에 표시됩니다. 맞습니까? 그러나 해당 팀 리더로 시작하는 팀원을 나열하고 싶습니다. – saran

0

CakePHP의 규칙을 따르면이 문제가 발생하지 않습니다.

TeamLead-> find() 및 TeamLead hasAndBelongsToMany 또는 hasMany TeamMember를 쿼리하면 반환 된 배열 구조에 뷰의 FormHelper 메서드와 함께 사용할 수있는 모든 형식이 포함됩니다.

관련 문제