2011.02.11 12:23:21 (*.124.167.196)
343,543
상태 | 완료 |
---|
모듈 개발하다가 삽질을 너무 많이 해서 .. 죄송하게도 고수님께 문의 드립니다. 모듈 개발중인데.. 기존 모듈중에 댓글(comment)모듈을 함께 쓰고 싶어서 넣었더니 잘 안됩니다. 댓글의 리스트가 보이지 않습니다. 관리자모드 댓글관리에서는 잘 보입니다. 제가 무엇을 잘못 했는지 고수님께서 함 봐 주세요..
적용파일들은 아래와 같습니다. 모듈명은 test로 하겠습니다. test/conf/module.xml test/test.view.php test/test.api.php test/skin/default/view_document.html test/skin/default/comment.html
적용된 파일들은 위와 같으며 각 파일에 적용된 것은 아래와 같습니다. test/conf/module.xml
---
<action name="dispTestContentCommentList" type="view" />
===
test/test.view.php
===
function dispTestContentCommentList(){ $oDocumentModel = &getModel('document'); $document_srl = Context::get('document_srl'); $oDocument = $oDocumentModel->getDocument($document_srl); $comment_list = $oDocument->getComments();
// 비밀글일때 컨텐츠를 보여주지 말자. foreach($comment_list as $key => $val){ if(!$val->isAccessible()){ $val->add('content',Context::getLang('thisissecret')); } } Context::set('comment_list',$comment_list); }
===
test/test.api.php
===
function dispPlannerContentCommentList(&$oModule) { $oModule->add('comment_list',$this->arrangeComment(Context::get('comment_list'))); } function arrangeComment($comment_list) { $output = array(); if(count($comment_list) > 0 ) { foreach($comment_list as $key => $val){ $item = null; $item = $val->gets('comment_srl','parent_srl','depth','is_secret','content','voted_count','blamed_count','user_id','user_name','nick_name','email_address','homepage','regdate','last_update'); $output[] = $item; } } return $output; }
===
test/skin/default/document_view.html
===
<!-- 댓글 --> <a name="comment"></a> <!--#include("./comment.html")-->
===
test/skin/default/comment.html
===
{$oDocument->getCommentcount()}
{@ $_comment_list = $oDocument->getComments() } <getCommentCount">!--@if($oDocument->getCommentCount())--> <!--@foreach($_comment_list as $key => $comment)--> comment <!--@end--> <!--@end-->
===
위와 같이 했는데 댓글이 나와야 하는 comment.html에 결과값은 숫자만 나옵니다. {@ $_comment_list = $oDocument->getComments() } 의 숫자값만 나오고 그 이후의 값이 출력 되지 않습니다.
댓글이 0개이면 당연히 숫자 0만 출력 되겠지만 댓글이 1개이상이면 comment라는 단어도 같이 반복되어 출력되어야 하는데 제가 무엇을 잘못 했는지 삽질삽질 하다 이렇게 문의 드립니다.
적용파일들은 아래와 같습니다. 모듈명은 test로 하겠습니다. test/conf/module.xml test/test.view.php test/test.api.php test/skin/default/view_document.html test/skin/default/comment.html
적용된 파일들은 위와 같으며 각 파일에 적용된 것은 아래와 같습니다. test/conf/module.xml
---
<action name="dispTestContentCommentList" type="view" />
===
test/test.view.php
===
function dispTestContentCommentList(){ $oDocumentModel = &getModel('document'); $document_srl = Context::get('document_srl'); $oDocument = $oDocumentModel->getDocument($document_srl); $comment_list = $oDocument->getComments();
// 비밀글일때 컨텐츠를 보여주지 말자. foreach($comment_list as $key => $val){ if(!$val->isAccessible()){ $val->add('content',Context::getLang('thisissecret')); } } Context::set('comment_list',$comment_list); }
===
test/test.api.php
===
function dispPlannerContentCommentList(&$oModule) { $oModule->add('comment_list',$this->arrangeComment(Context::get('comment_list'))); } function arrangeComment($comment_list) { $output = array(); if(count($comment_list) > 0 ) { foreach($comment_list as $key => $val){ $item = null; $item = $val->gets('comment_srl','parent_srl','depth','is_secret','content','voted_count','blamed_count','user_id','user_name','nick_name','email_address','homepage','regdate','last_update'); $output[] = $item; } } return $output; }
===
test/skin/default/document_view.html
===
<!-- 댓글 --> <a name="comment"></a> <!--#include("./comment.html")-->
===
test/skin/default/comment.html
===
{$oDocument->getCommentcount()}
{@ $_comment_list = $oDocument->getComments() } <getCommentCount">!--@if($oDocument->getCommentCount())--> <!--@foreach($_comment_list as $key => $comment)--> comment <!--@end--> <!--@end-->
===
위와 같이 했는데 댓글이 나와야 하는 comment.html에 결과값은 숫자만 나옵니다. {@ $_comment_list = $oDocument->getComments() } 의 숫자값만 나오고 그 이후의 값이 출력 되지 않습니다.
댓글이 0개이면 당연히 숫자 0만 출력 되겠지만 댓글이 1개이상이면 comment라는 단어도 같이 반복되어 출력되어야 하는데 제가 무엇을 잘못 했는지 삽질삽질 하다 이렇게 문의 드립니다.
최근 수정일 : 2011-02-12 12:42:30 - 아무나
글 작성한 곳 :
![](http://bek.me/modules/ip2nation/tpl/images/flag/all/kr.gif)
2011.02.11 15:05:16 (*.124.167.196)
comment 는 그냥 제가 출력이 되는지 볼려구 하는 문장이구요..
거기 실제 소스는 board 모듈에서 comment 모듈 불러오는 소스랑 거의 같습니다.
제 나름대로 수정할려고 하는 부분입니다..
거기 실제 소스는 board 모듈에서 comment 모듈 불러오는 소스랑 거의 같습니다.
제 나름대로 수정할려고 하는 부분입니다..
글 작성한 곳 :
![](http://bek.me/modules/ip2nation/tpl/images/flag/all/kr.gif)
2011.02.11 15:28:57 (*.34.227.148)
![profile](http://bek.me/files/member_extra_info/profile_image/004/4.png?20140228180321)
소스가 이미지와 동일하다면 해당 게시물로 접속하면 댓글 수 만큼 comment 라고 출력 될 것입니다.
글 작성한 곳 :
![](http://bek.me/modules/ip2nation/tpl/images/flag/all/kr.gif)
2011.02.11 15:39:36 (*.124.167.196)
저도 그렇게 될줄 알았는데.. 이상하게 안되어서 질의 드립니다.
댓글모듈을 쓰기위해 작성해야할 소스들 중에 제가 빠트린 부분은 없는지요?
conf/module.xml
모듈.view.php
모듈.api.php
skin/view_document.html
skin/comment.html
이것외에 혹시 더 적용시켜야 하는 부분은 없나요?...
댓글모듈을 쓰기위해 작성해야할 소스들 중에 제가 빠트린 부분은 없는지요?
conf/module.xml
모듈.view.php
모듈.api.php
skin/view_document.html
skin/comment.html
이것외에 혹시 더 적용시켜야 하는 부분은 없나요?...
글 작성한 곳 :
![](http://bek.me/modules/ip2nation/tpl/images/flag/all/kr.gif)
2011.02.11 16:06:59 (*.124.167.196)
소스에서처럼
{$oDocument->getCommentcount()}
이렇게 해서 출력해 봤구요.. 등록된 댓글수와 동일합니다.
{$oDocument->getCommentcount()}
이렇게 해서 출력해 봤구요.. 등록된 댓글수와 동일합니다.
글 작성한 곳 :
![](http://bek.me/modules/ip2nation/tpl/images/flag/all/kr.gif)
2011.02.12 09:54:32 (*.124.167.196)
$_comment_list 를 찍어 보면.. array로 받아 와야 하는데..
아무것도 안 찍히네요..
이상하네.. 이것이 문제군요..
아무것도 안 찍히네요..
이상하네.. 이것이 문제군요..