제목 | 모델의 멤버 변수 사용 효용성 문의 | ||
---|---|---|---|
글쓴이 | 작돌이 | 작성시각 | 2010/04/01 17:53:47 |
|
|||
모델 클래스에 멤버 변수를 사용하여 데이터베이스에 insert 하는 법과 멤버변수 없이 post 로 받은 값을 insert 하는 방법의 차이가 있다면 무엇일까요? 가능하면 mvc 를 맞추어 작업하려고 노력하고 있는데 하다보니 모델의 맴버 변수 효용성에 대해 궁금증이 생기더라구요. 모델 자체를 JSP 환경처럼 쓰기 어려운 것 같아요. class Lovepool extends Model { var $sender = ''; var $location_x = ''; var $location_y = ''; var $range = ''; var $stat = ''; var $reg_date = '';위와 같은 모델이 구성되어 있을 경우 function insert_lovepool() { $this->sender = $this->input->post('member_id', TRUE); $this->location_x = $this->input->post('location_x', TRUE); $this->location_y = $this->input->post('location_y', TRUE); $this->range = $this->input->post('range',TRUE); $this->stat = 0; $this->reg_date = date("Y-m-d H:m:s"); $this->db->insert('lovepool', $this); }으로 구성하는 것과 멤버 변수 없이 직접 인서트 하는 법... 어떤가요? 작업이 진행될 수록 멤버 변수의 사용 법위가 모델 내에서 특히 인서트 하는 부분 말고는 참조할 만한 게 없어요. 업데이트 할때도 특정 필드만 접근하게 되고 삭제할때도 역시 멤버 변수를 쓸일이 없고... 조언 부탁드려요 ㅜㅜ |
|||
다음글 | 다중 DB 쿼리 캐싱 (5) | ||
이전글 | CI + 제로보드4 게시판 사용 (2) | ||
사월
/
2010/04/01 22:24:49 /
추천
0
|
변종원(웅파)
/
2010/04/02 10:52:16 /
추천
0
멤버변수 사용할 정도의 모델은 없었던 것 같네요.
저도 post값은 컨트롤러에서 처리 또는 바로 모델함수에 넘깁니다. |
kirrie
/
2010/04/02 11:35:17 /
추천
0
일일이 저렇게 선언하지 않아도 $model->some_val = 'aaaa'; 하면 $model 인스턴스에 자동으로 변수가 초기화됩니다. php5부터는 visibility를 강하게 지정할 수 있어서 엄격하게 변수 선언을 체크할 수 있지만...
그리고 $this 는 CI 코어 인스턴슨데 저렇게 하면 좀 위험할듯합니다. 그럴리는 없겠지만 혹시라도 멤버변수가 중복되기라도 하면 바로 에러. 저는 값을 배열로 그냥 넘깁니다. |
작돌이
/
2010/04/02 15:57:51 /
추천
0
조언 감사합니다!
|
그런데.. post값 받아오는건 콘트롤러에서 하는게 맞지않을까요;
콘트롤러에서 post값 받아서 validation 처리해서 모델의 insert() 등의 메쏘드에 값을 넘긴후에
$this->db->set() 한 후 $this->db->insert() 를 해서 처리하고 있습니다.
MVC를 어떻게 구성하느냐에 정답은 없겠죠~