포럼

저도 경험한 것이지만


documents 테이블을 목록에서 불러올때 굳이 게시판 정보에 설정한 선별된 목록에서 불러와야 하는지 의문 입니다.


어차피 한페이지에 보이는 목록 갯수(기본 20개)는 정해져 있는 상황에서

선별해서 불러오는것과 전체를 불러오는것과 차이가 있는지 검토가 필요한것 같습니다.


본문이 이해가 안되신다고 해서 추가 합니다.


board.view.php 에서

목록 불러올때 아래의 _makeListColumnList()를 호출후 얻어진 $this->columnList 항목만 documents 테이블에서 가져와 목록에 뿌려줍니다.


_makeListColumnList() 과정을 거치는 것과 그냥 documents 테이블의 모든 필드를 가져오는것과 속도면에서 차이가 없을것 같다는 것입니다.


왜냐하면 통상 우리가 목록에 가져오는 row의 갯수가 통상 20개 수준이기 때문에 그 차이가 무시할 수 있는 수준일것으로 예상됩니다.


오히려 선별해서 목록을 뿌려주다보니 스킨 작업시 목록에서 선정되지 않은 항목은 표시할 수 없어서 다시 목록에서 선정해줘야하는 문제들이 발생하고 있습니다.




function _makeListColumnList()

{

$configColumList = array_keys($this->listConfig);

$tableColumnList = array('document_srl', 'module_srl', 'category_srl', 'lang_code', 'is_notice',

'title', 'title_bold', 'title_color', 'content', 'readed_count', 'voted_count',

'blamed_count', 'comment_count', 'trackback_count', 'uploaded_count', 'password', 'user_id',

'user_name', 'nick_name', 'member_srl', 'email_address', 'homepage', 'tags', 'extra_vars',

'regdate', 'last_update', 'last_updater', 'ipaddress', 'list_order', 'update_order',

'allow_trackback', 'notify_message', 'status', 'comment_status');

$this->columnList = array_intersect($configColumList, $tableColumnList);


if(in_array('summary', $configColumList)) array_push($this->columnList, 'content');


// default column list add

$defaultColumn = array('document_srl', 'module_srl', 'category_srl', 'lang_code', 'member_srl', 'last_update', 'comment_count', 'trackback_count', 'uploaded_count', 'status', 'regdate', 'title_bold', 'title_color');


//TODO guestbook, blog style supports legacy codes.

if($this->module_info->skin == 'xe_guestbook' || $this->module_info->default_style == 'blog')

{

$defaultColumn = $tableColumnList;

}


if (in_array('last_post', $configColumList)){

array_push($this->columnList, 'last_updater');

}


// add is_notice

if ($this->except_notice)

{

array_push($this->columnList, 'is_notice');

}

$this->columnList = array_unique(array_merge($this->columnList, $defaultColumn));


// add table name

foreach($this->columnList as $no => $value)

{

$this->columnList[$no] = 'documents.' . $value;

}

}



글쓴이 제목 최종 글
XE 공지 정치와 관련 되거나 욕설 포함된 컨텐츠 작성에 주의 부탁드립니다.  
BNU 공지 XE 이슈 등록은 Github 프로젝트를 이용해주세요. [13] 2016.07.15 by ZerglingGo
국가정보보안 리눅스 계열 dstat 서버상태 모니터링 [2] file 2014.03.11 by Luatic™
휘즈 모바일에서 게시판 검색 에러 [2] 2014.03.12 by 휘즈
銀童 질문이 아니라 아예 의뢰를 하시는 분들이 있네요. [5] 2014.03.12 by DynamicLaser
Canto 혹시 jqm 쓰시는 분들 계신가요?  
SMaker XE마켓을 이용하지 않는 이유가 무엇일까요? [59] 2014.03.13 by HolyJohn
마음의빈자리 아직도 살아있는 병맛골 ㅋㅋㅋ xe1.4 대로 만든듯, [4] file 2014.03.13 by :DunhillBoy
컴스 오픈 안 한 사이트에 스팸 2500건 [8] 2014.03.13 by 착한악마
김재순 PXE홈페이지 오류 문제 [4] 2014.03.13 by DynamicLaser
Es.tee 신디케이션 수집되었던 게시물이 누락되는 이유? [4] 2014.03.13 by ToFinder
StyleRoot XE 투표 모듈 개조 [2] file 2014.03.14 by 세계여행32
애니즌 관리자가 사용자 글을 수정하면 [2] 2014.03.14 by 애니즌
prologos 쿡래빗 레이아웃 테스트중... [1] file 2014.03.14 by LI-NA
레몬바나나 댓글 정렬 방법에 검토 부탁드립니다. [7] 2014.03.14 by 이즈야
socialskyo 코어도 업데이트되고 게시판 스킨을 lune으로 변경했네요 [3] 2014.03.15 by 원조바다새
Omega3 XE 홈페이지 운영 하려고 호스팅 회사를 알아보고 있는데요. 추천 좀 해주세요~ [16] 2014.03.15 by SS
마이웹 질답게시판에 답을 하면서 몇가지 개선점이 있는것 같아서 글 올립니다. [4] 2014.03.15 by 마이웹
도라미 허허 다올을 너무 많이 놀렸네요. [6] file 2014.03.16 by 마이웹
나도모름 $oMemoModel 의 $o 는 무엇을 의미하는 접두사인가요? [3] 2014.03.16 by 웹엔진
여우별다솜 DB가 통째로 삭제되버렸네요.. [2] 2014.03.16 by LI-NA
심플XE 레이아웃 만드실때... [1] 2014.03.16 by 숭숭군