Q&A

방법을 좀 바꿔봤는데요,

$obj = Context::getRequestVars();
$obj->module_srl = $this->module_srl;

$oDocumentModel = getModel('document');
$oDocument = $oDocumentModel->getDocument($obj->document_srl);

$star_obj->module_srl = $this->module_srl;
$star_obj->document_srl = $obj->document_srl;
$star_obj->voted_count = '100';
$output = executeQuery('board.voteRemove', $star_obj);

이렇게 해주니깐 코멘트 삭제할 때 게시물 추천수가 100이 됩니다.

이제 '해당 게시물의 추천수'와 '해당 코멘트의 추천수'

이 두가지만 구할 줄 알면 되겠는데요..

$oDocumentModel->getDocument($obj->voted_count); 이렇게 하면 해당 글의 추천수가 맞나요? 해당 코멘트의 추천수 같기도 한데 ㅠ_ㅠ;

 

지울려고 하는 해당 게시물(document_slr)의 voted_count 와

지우는 코멘트의 voted_count를 구하는 변수(?)는 무엇인가요.

이온디 Lv. 13
# 라이믹스 스킨 제작은 어디? >>>> XE 레이아웃, 라이믹스 스킨제작은 이온디에서 커스터마이징해드립니다.
# 빠른 라이믹스 커뮤니티용 호스팅을 찾고 계신가요? >>>> 이온디호스팅 서비스는 PHP8 & Redis 서버 캐시를 활용하여 라이믹스에 최적화된 호스팅 서비스를 제공해드립니다. (서버세팅시 웹패널, 내도메인메일서비스도 함께 구축해드립니다.)
https://eond.com

댓글 8

  • $oDocument 객체에 해당 게시물에 대한 정보가 남아있으니, debugPrint() 함수를 이용해서
    $oDocument에 뭐가 있는지 살펴보시면 도움이 되실 거에요.

    예를 들자면:
    -추천 수: $oDocument->get('voted_count')
    -비추천 수: $oDocument->get('blamed_count')
    -조회수: $oDocument->get('readed_count')
  • @SimpleCode

    $obj = Context::getRequestVars();
    $obj->module_srl = $this->module_srl;


    $document_srl = Context::get('document_srl');
    $oDocumentModel = &getModel('document');
    $oDocument = $oDocumentModel->getDocument($document_srl);
    $oVote = $oDocumentModel->getDocument($voted_count);

    $star_obj->module_srl = $this->module_srl;
    $star_obj->document_srl = $obj->document_srl;
    $star_obj->voted_count = $oDocument->get('voted_count')-$oVote;
    $output = executeQuery('board.voteRemove', $star_obj);

    이렇게 하니깐 되긴 하는데, 1씩만 깍입니다.
    어디서 잘못된 걸까요?;;

     

    게시물의 추천수는 가져오는데, 지울려는 해당 코멘트의 추천수는 가져오는게 잘못된 거 같습니다;;

  • @이온디
    $oDocumentModel->getDocument() 에서는 document_srl을 매개변수로 전달해주셔야 합니다~
  • @SimpleCode
    그런건 어떻게 하나요? ㅠ
  • @이온디
    $oVote = $oDocumentModel->getDocument($voted_count); 이렇게 적은 $voted_count 이라고 적은 부분을 $document_srl 와 같은 document_srl 의 숫자가 들어가야할 자리에 다른 숫자가 들어갔다는 뜻입니다.

    기본적으로 PHP코딩을 위해서라면 PHP에 대한 인수 인자 및 메서드의 규칙을 좀 이해하시는게 좋을것 같아요.
  • @이온디
    해당 메서드사용에 대한 주석을 참고해보세요.
    https://github.com/xpressengine/xe-core/blob/master/modules/document/document.model.php#L127
  • @이온디

    어디서 사용하시는 지는 몰라도 원하신는대로 하려면 $oVote에 댓글 추천수를 가져오셔야 하겠네요.
    예)$oComment->get('voted_count')

    어느상황에냐에 따라 정보가 없으면 삭제하려는 코멘트srl로 정보를 가져오셔야..

  • @디이깅
    board.controller.php 파일에서 deleteComment 펑션 부분에서 사용할 겁니다;