2011-01-22 7 views
1

Cake가 일반적으로하는 것처럼 모델이 아닌 사용자 정의 배열의보기 유형에 입력 필드를 지정하고 싶습니다. 그래서, 필드 타입을 알려주는 키 (뷰에 전달) 내 배열에있는 데이터베이스의 필드에 있어야합니다CakePHP는 사용자 정의 배열에서보기로 입력 유형을 설정합니다.

[type] => 'varchar(32)'

싶습니다

케이크 지정 자동적으로이 필드 유형을 알고하기 해당 입력 필드에 입력하십시오 (위 예제의 경우 입력은 text이됩니다). 이것을 어떻게 할 수 있습니까?

감사합니다.

P.S : 다음은 '변환은 "나는 (테이블에서) 달성하고자 다음과 같습니다 폼 요소를 HTML로 Data types correspondings in Cake

답변

0

linkyndy, 모델 스키마 유형의

매핑 여기 이루어집니다 - http://api.cakephp.org/view_source/form-helper/#l-738. 또한 varchar (32) (string)은 FormHelper를 사용할 때 html 입력 요소를 만듭니다. 대신 텍스트 영역을 원하십니까?

자동 필드 탐지를 사용하지 않으려면 입력 요청에 요소 유형을 지정할 수 있습니다. 이것이 받아 들일 수 없다면 db 필드 유형을 변경하여 CakePHP가 기대하는 것을 충족 시키거나 모델의 schema() 결과를 조작 할 수 있습니다. 또는 자신의 도우미에게 재정의 된 input() 메소드를 제공 할 수 있습니다.

$ this-> Form-> input()을 호출 할 때 형식을 지정하는 것이 쉽습니다.

+0

필드 유형이 '실제'가 아니기 때문에 SQL에서 스키마를 변경할 수 없습니다. 이들은 열로 추가되며 목표 테이블의 필드 유형을 나타냅니다. 필드 유형을 배열에 저장하면이 작업을 수행하는 것이 더 쉬운 방법이라고 생각했습니다. 그래서, 유일한 방법은 필드 형식을 배열에 저장하고 적절한 대응을 input()의 options 배열에 할당하는 것입니다. – linkyndy

관련 문제