Development

Documentation/ko_KR/book/forms/1_1/01-Form-Creation (diff)

You must first sign up to be able to contribute.

Changes between Version 13 and Version 14 of Documentation/ko_KR/book/forms/1_1/01-Form-Creation

Show
Ignore:
Author:
withrain (IP: 203.236.3.245)
Timestamp:
03/06/09 10:09:08 (9 years ago)
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Documentation/ko_KR/book/forms/1_1/01-Form-Creation

    v13 v14  
    3535위젯은 폼 필드를 표현한다. 이 예제에서 세개의 필드, name, email, message 를 나타내기 위해 세개의 위젯이 필요하다. 아래 Listing 1-1 은 이 ContactForm 클래스의 첫번째 버전이다. 
    3636 
     37리스팅 1-1 - 세개의 필드를 가진 ContractForm 클래스 
    3738{{{ 
    3839// lib/form/ContactForm.class.php 
    7172contract 모듈에서 리스팅 1-2에서와 같이 폼 인스턴스를 템플릿으로 전달할 수 있도록 index 액션을 수정한다. 
    7273 
    73 리스팅 1-2 contract 모듈의 Actions 클래스 
     74''리스팅 1-2 - contract 모듈의 Actions 클래스'' 
    7475{{{ 
    7576// apps/frontend/modules/contact/actions/actions.class.php 
    8788우리는 리스팅 1-3 에서와 같이 폼을 나타내기 위한 템플릿을 생성하여야 한다. 
    8889 
    89 리스팅 1-3 폼 디스플레이 템플릿 
     90''리스팅 1-3 - 폼 디스플레이 템플릿'' 
    9091{{{ 
    9192// apps/frontend/modules/contact/templates/indexSuccess.php 
    106107프로토타입 폼을 만들때 <?php echo $form ?> 은 매우 유용하다. 개발자가 비주얼 측면면을 고민하지 않고 비즈니스 로직에 집중하게 해주기 때문이다. 챕터 3 에서 어떻게 폼과 템플릿을 커스터마이징 하는지 설명한다. 
    107108 
    108 * <?php echo $form ?> 을 사용해서 오브젝트를 나타낼 때 PHP 는 실제로 $form 의 텍스트 표현을 나타낸다. 오브젝트를 스트링으로 변환하기 위해 PHP 는 매직 메소드인 __toString() 를 호출한다. 각 위젯은 오브젝트를 HTML 코드로 변환하기 위해 이 매직 메소드를 구현해야 한다. 즉 <?php echo $form ?> 는 <?php echo $form->__toString() ?>와 동일하다. 
     109* <?php echo $form ?> 을 사용해서 오브젝트를 나타낼 때 PHP 는 실제로 $form 의 텍스트 표현을 나타낸다. 오브젝트를 스트링으로 변환하기 위해 PHP 는 매직 메소드인 `__toString()` 를 호출한다. 각 위젯은 오브젝트를 HTML 코드로 변환하기 위해 이 매직 메소드를 구현해야 한다. 즉 <?php echo $form ?> 는 `<?php echo $form->__toString() ?>`와 동일하다. 
    109110 
     111이제 브라우저에서 폼을 볼수 있다(그림 1-4) contract/index 액션의 주소(/frontend_dev.php/contact)를 입력해서 결과를 확인한다. 
    110112 
     113''그림 1-4 - 생성된 contract 폼'' 
     114[[Image(http://www.symfony-project.org/images/forms_book/en/01_04.png)]] 
    111115 
     116리스팅 1-4 는 템플릿에 의해 생성된 HTML 코드를 보여 준다. 
     117{{{ 
     118<form action="/frontend_dev.php/contact/submit" method="POST"> 
     119  <table> 
     120  
     121    <!-- Beginning of generated code by <?php echo $form ?> 
     122 --> 
     123    <tr> 
     124      <th><label for="name">Name</label></th> 
     125      <td><input type="text" name="name" id="name" /></td> 
     126    </tr> 
     127    <tr> 
     128      <th><label for="email">Email</label></th> 
     129      <td><input type="text" name="email" id="email" /></td> 
     130    </tr> 
     131    <tr> 
     132      <th><label for="message">Message</label></th> 
     133      <td><textarea rows="4" cols="30" name="message" id="message"></textarea></td> 
     134    </tr> 
     135    <!-- End of generated code by <?php echo $form ?> 
     136 --> 
     137  
     138    <tr> 
     139      <td colspan="2"> 
     140        <input type="submit" /> 
     141      </td> 
     142    </tr> 
     143  </table> 
     144</form> 
     145}}} 
    112146 
     147HTML 테이블의 세개의 tr 라인으로 표현된 폼을 볼수 있다. 이 때문에 <table> 태그로 감쌌던 것이다. 각 tr 라인은 하나의 <label> 태그와 하나의 폼 태그(<input> 또는 <textarea>)로 이루어져 있다. 
     148 
     149== Labels == 
     150