Development

Documentation/ko_KR/summary/The_Definitive_Guide_to_symfony (diff)

You must first sign up to be able to contribute.

Changes between Version 12 and Version 13 of Documentation/ko_KR/summary/The_Definitive_Guide_to_symfony

Show
Ignore:
Author:
withrain (IP: 121.138.115.186)
Timestamp:
04/10/09 08:38:31 (9 years ago)
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Documentation/ko_KR/summary/The_Definitive_Guide_to_symfony

    v12 v13  
    373373 
    374374위 명령으로 lib/model/om/ 디렉토리에 아래 파일들이 생성된다. 
     375{{{ 
    375376 * BaseArticle.php 
    376377 * BaseArticlePeer.php 
    377378 * BaseComment.php 
    378379 * BaseCommentPeer.php 
     380}}} 
    379381그리고 lib/model 디렉토리에는 아래 파일들이 생성된다. 
     382{{{ 
    380383 * Article.php 
    381384 * ArticlePeer.php 
    382385 * Comment.php 
    383386 * CommentPeer.php 
    384  
     387}}} 
    385388lib/model 에 있는 클래스는 lib/model/om 에 있는 클래스를 상속받은 클래스이다. 만약 어떤 클래스에 자신만의 메소드를 추가하고 싶다면 lib/model 클래스에 추가하여야 한다. 심포니의 build-model 명령은 lib/model/om 에 있는 클래스 파일을 덮어 쓰기 때문이다. 하지만 lib/model 에 있는 클래스는 덮어쓰지 않는다. 이 모델 클래스에는 해당 테이블에 데이터를 추가,삭제,수정할 수 있는 모든 메소드들을 포함하고 있으며 테이블의 레코드를 객체로 추출하여 핸들링할 수 있는 메소드를 포함하고 있다. 
    386389 
    387  
     390'''크라이티리어를 이용한 데이터 추출''' 
     391 
     392하나이상의 레코드를 추출할때 추출하고자 하는 클래스의 doSelect() 메소드를 사용할 수 있다. 예를 들면 ArticlePeer::doSelect(). doSelect 메소드의 파라메타는 Criteria 의 오브젝트이다. 빈 Criteria 는 전체 레코드를 추출하게 된다. 아래는 그 예이며 주석 아랫부분은 변환되어 데이터베이스에 던져지게 되는 실제 질의문이다. 
     393 
     394{{{ 
     395$c = new Criteria(); 
     396$articles = ArticlePeer::doSelect($c); 
     397  
     398// Will result in the following SQL query 
     399SELECT blog_article.ID, blog_article.TITLE, blog_article.CONTENT, 
     400       blog_article.CREATED_AT 
     401FROM   blog_article; 
     402}}} 
     403 
     404특정 컬럼의 조건을 이용하여 추출하는 예를 보자 
     405 
     406{{{ 
     407$c = new Criteria(); 
     408$c->add(CommentPeer::AUTHOR, 'Steve'); 
     409$c->addAscendingOrderByColumn(CommentPeer::CREATED_AT); 
     410$comments = CommentPeer::doSelect($c); 
     411  
     412// Will result in the following SQL query 
     413SELECT blog_comment.ARTICLE_ID, blog_comment.AUTHOR, blog_comment.CONTENT, 
     414       blog_comment.CREATED_AT 
     415FROM   blog_comment 
     416WHERE  blog_comment.author = 'Steve' 
     417ORDER BY blog_comment.CREATED_AT ASC; 
     418}}} 
     419