포럼
초초보 개발자가 Model상속이 안되는것 같아 답답해서 여쭙습니다
2013.07.11 18:34
저도 나름 개발(?)아닌 개발을 하고 있으니 이렇게 개발자 포럼 이라는 무시무시한 곳에 글을 올립니다.
현재 아주 간단하게 지인분만을 위한 모듈을 만들고 있습니다.
(태어나서 처음으로 해봅니다. 하나하나 쓰면서 유저들이 편리하게 이용할 생각을 하니 '아~ 이맛에 프로그램하는구나!'하는 생각이 드네요. 새삼 개발자분들 존경스럽습니다.)
로또처럼 복권번호를 자신이 입력하고 입력한 날짜에 맞춰서 쭉~ 리스트로 보여주고 관리하는 것입니다.
현재 DB에 입력은 잘 되는데요, DB에 입력된 값을 받아오는 과정에서
출력되는 부분이 전혀 나오지 않습니다. 디버그를 하는 코드를 넣어봐서 출력해봤는데 디버그코드가 안나오네요.
---- model.php
class receiptModel extends receipt {
.
.
.
function procReceiptGetNumberBysrl($member_srl) {
if(!Context::get('is_logged'))
$this->stop('Please Login');
{
return executeQuery('receipt.getReceiptMynumber', $member_srl);
}
}
}
--- view.php
class receiptView extends receipt {
.
.
.
function dispReceiptMylist() {
if(!Context::get('is_logged')) return $this->stop('로그인이 필요한 서비스 입니다다.');
// 변수 설정
$logged_info = Context::get('logged_info');
$member_srl =$logged_info->member_srl;
// model 객체 생성후 번호를 구해옴
$oReceiptModel = &getModel('receipt');
$output = $oReceiptModel->procReceiptGetNumberBysrl($member_srl);
// 템플릿에 쓰기 위해서 context::set
Context::set('number_list', $output->data);
debugPrint($output);
$this->setTemplateFile('receipt_box');
}
}
--- class.phpclass receipt extends ModuleObject {function moduleInstall() {$oModuleController = &getController('module');$oModuleController->insertActionForward('receipt', 'view', 'receipt');return new Object();}function checkUpdate() {return false;}function moduleUpdate() {return new Object(0,'success_updated');}function recompileCache() {}}
댓글 4
-
푸시아
2013.07.11 19:23
-
CMD
2013.07.11 19:24
쿼리를 날리실 때는 객체를 넘기셔야 해요~function procReceiptGetNumberBysrl($member_srl) { $args->member_srl = $member_srl; return executeQuery('receipt.getReceiptMynumber', $args); }
-
푸시아
2013.07.11 19:32
@CMD 님과 같은 이야기 되겠습니다.
-
뀰귤
2013.07.12 00:44
와~~~ 와~~~ 정말 그렇군요
사실 저거 함수만들때 $member_srl 안넣고 쿼리발생할때 그자리에서 자신의 context에서 member_srl 즉시 받아서 조회하게 할려고했는데 만약 그렇게 했으면 이런 사실도 모르고 안보이는 곳에더 더 고생했을거예요...
CMD님이랑 푸시아님 정말 정말 감사합니다!!
쿼리 부분이 어떻게 되어 있는지 잘 모르겠지만
view.php 파일에서
$member_srl =$logged_info->member_srl;
이것을
$member_srl = $logged_info;
로 해보시기 바랍니다.