제목 | 오류 몇가지 | ||
---|---|---|---|
글쓴이 | 徽人 | 작성시각 | 2009/10/26 17:33:14 |
|
|||
액티브 레코드를 사용할 적에 몇가지 오류가 있네요. 먼저 CI_DB_active_record::_like함수를 호출할 경우입니다. $like_statement = $like_statement.sprintf($this->_like_escape_str, $this->_like_escape_char);728줄에 이런 코드가 있습니다. 여기서 $this->_like_escape_char이라는 필드는 상속하거나 상속받는 클래스의 어디에도 존재하지 않습니다. 하지만 $this->_like_escape_chr이라는 필드는 있죠. (얘네들이 오타낸거 같습니다. ㄱ-) 그리고 CI_DB_active_record::_where_in함수를 호출할 경우입니다. $prefix = (count($this->ar_where) == 0) ? '' : $type;584줄에 보면 이런 코드가 있습니다. 평상시에는 정상적으도 작동하는데 캐시(액티브 레코드 캐시)된 항목이 있을 경우에 다시 이 함수를 호출하면 and(or)절을 붙이지 않습니다. (처음 호출할 때만 그렇습니다.) $prefix = (count($this->ar_where) == 0 && count($this->ar_cache_where) == 0) ? '' : $type; 이렇게 수정하시면 정상적으로 됩니다. PS. 웃긴건 _where메서드에는 $prefix = (count($this->ar_where) == 0 AND count($this->ar_cache_where) == 0) ? '' : $type; 이런식으로 정상적으로 해놨습니다. -ㅅ- |
|||
다음글 | 주소 세그먼트 -> 배열변환 함수 (4) | ||
이전글 | CI 쿼리 캐시의 캐시 경로 설정시 주의 사항 (1) | ||
변종원(웅파)
/
2009/10/26 18:01:34 /
추천
0
|
徽人
/
2009/10/26 18:07:45 /
추천
0
영어는 짧은지라 ㅎㅎ;;
|
ci세상
/
2009/10/26 23:25:21 /
추천
0
char은 확실한 오타네요 ~~ 7개정도의 파일을 다 수정해 줘야할것 같습니다;; |
http://codeigniter.com/bug_tracker/ 버그트래커에도 올리면 좋겠네요. ^^