CodeIgniter 응용 프로그램에서 ORM을 구현하려고하는데 작동하지 않습니다. 난 그냥 간단한 테스트 모델의 인스턴스를 시도하고 시작하려면 :CodeIgniter에서 DataMapper를 사용할 수 없습니다.
public function __construct()
{
parent::__construct();
$this->load->model('cart');
}
public function index()
{
$cart = new Cart();
}
하지만 난 생성자 번번이 않습니다
<?php
class Cart extends DataMapper
{
public function __construct()
{
// model constructor
parent::__construct();
}
var $validation = array(
'username' => array(
'label' => 'UserName',
'rules' => array('required', 'trim', 'unique', 'alpha_dash', 'min_length' => 1, 'max_length' => 50),
)
);
}
?>
그리고를 다음 컨트롤러에서 나는이 시도. 디버거가 멈추고 "ide key xxxxx로 들어오는 연결 대기 중"이라는 메시지가 나타납니다. (임의 번호)
BTW 카트 모델 클래스 파일 이름은 소문자이지만 클래스 이름은 대문자입니다. 나는 생성자에서 둘 다 시도했다.
2 datamapper 파일을 라이브러리 및 구성 폴더에 복사하고 datamapper 라이브러리를 자동로드하는 방법은 설치 지침을 따라야합니다.
하지만 작동하지 않습니다. 내가 놓친 게 있니? 내가 매핑하려고하는 테이블은 실제로 id 및 username 필드 만있는 테스트 테이블입니다. 실제로 유효성 검사 배열을 이해하지 못했지만, 문서의 예제를 따라하고 내 필드를 수정했습니다. id 필드는 누군가가 유효성 검사 배열에 넣은 것처럼 보이지 않습니다.
내가 CodeIgniter의 초보자라는 것을 언급해야합니다.
추적 할 수없는 문제가있는 때가 많습니다. 모델 또는 컨트롤러 또는 중복 된 이름을 가진 이름이 붙은 것입니다. 그것이 당신의 문제인지 아닌지 모르겠지만, 당신은 그것을 점검 할 것입니다. – swatkins
당신의 대답이 정말로 그 질문에 답하는지는 아직 모르겠지만 당신 말이 맞을 수도 있습니다. 아마도 일종의 명명 충돌이있을 것입니다. 어쨌든 가장 좋은 대답 이었기 때문에 크레딧은 당신 것입니다. 어쨌든 시작점으로 사용했던 샘플 앱과이 링크를 발견했습니다. 그 사람에게도 소품 :-) http://www.terrymatula.com/development/2011/codeigniter-and-datamapper-orm-base-installation/ – Anders
'$ this-> load-> model ('카트');'생성자로부터? 내 답변에서 말했듯이 datamapper는 모델을로드합니다. 이로 인해 충돌이 발생할 수 있습니다. – swatkins