질문은 오래되었지만 아직 관련이 없으므로 아직 답변이 없으므로 formBuilder를 사용하는 몇 가지 장점과 이유를 알려 드리겠습니다.
양식 유효성 검사 양식의 데이터는 엔터티 속성의 제약 조건에 대해 유효성이 검사됩니다. 아주 좋고 쉬운.
엔터티 선택 유형 선택 상자를 아무런 노력없이 엔터티로 미리로드 할 수 있습니다.
DataTransformers 보기/표준/모델 데이터간에 특정 검사, 데이터 변환 및 형식 지정을 적용 할 수 있습니다.
예 : 데이터베이스에서 전달되는 ISO8601 문자열 -> [마술이 발생합니다] -> php DateTime 객체 -> [more magic] -> 양식 필드의 Intl 형식 및 현지화 날짜를 참조하십시오.
+ optionsResolver
... 그리고 당신이 나뭇 가지에 조금 더 갈 의향이 있다면, 당신은 기본적으로 당신이 생각할 수있는 모든 방법으로 어떤 형태 요소의 렌더링을 사용자 정의 할 수 있습니다.
예 : 사용자 정의 FormType과 나뭇 가지 형태의 위젯과 양식 빌더에서 간단한
->add('devices', 'device_selection', array(
'site' => $deviceGroup->getSite(),
'groups' => false,
'group' => $deviceGroup,
))
, 당신에게 아이콘 추가 세부 사항 확인란 목록, 사업부에 싸여 각을 제공 할 수 있습니다. 단지 예입니다.
이것은 내 머리 꼭대기에 있습니다.
저는 PHP/HTML/CSS를 사용 했었지만 거대하고 복잡한 웹 프로젝트를 손에 넣었을 때 formBuilder의 복잡성이 추가되어 엄청난 유연성이 추가되었습니다. 이것은 Symfony와 같은 프레임 워크가 빛나는 곳입니다.
귀하의 대답은 '왜 Symfony2를 사용합니까?'와 관련이 있다고 생각합니다. – pbenard
Symfony2에 대해서는 대답 할 수 없지만, 1.1+에서는 유효성 검사 및 필드 별보고 기능을 매우 쉽게 추가하여 길어진 양식에서도 새 화면을 만들 수있는 리드 타임을 줄이는 시스템을 만드는 것이 아이디어였습니다. 불행히도 간단한 양식에 사용하는 것은 매우 복잡했으며 당시 포럼에 대한 의견은 소수의 사람들이 그 내용을 포기하는 것이 었습니다. Symfony2에서 폼 시스템의 개발자가 어떻게 먹 였는지 모르겠습니다. 그러나 나는 그 존재 이유가 동일하다고 생각해야합니다. 즉, 입증 할 수있는 형태로 신속하게 실행하고 검증 기본값으로 빠르게 작동시킬 수 있어야합니다. – halfer
나뭇 가지의 다른 매개 변수에 따라 달라지는 수백 개의 정적 + 선택적 필드로 복잡한 중첩 된 양식을 작성해보십시오. –