2010-12-04 2 views
0

나는 여기에있는 누군가가 단서를 갖고 있다고 당황하고 있습니다.간단한 수업을위한 새로운 className()에 대한 이상한 교만 Zend/Doctrine 오류

젠드와 교리 문 1.x가 있다고 생각합니다.

내가 아주 간단한 레코드 유형 만들었습니다 그것

class MYAPP_Model_CustomerContactRequest extends Doctrine_Record 
{ 
    /** 
    * Set table definition 
    */ 
    public function setTableDefinition() 
    { 
    $this->setTableName('my_table_name'); 
    $this->hasColumn('id', 'integer', 4, array(
     'type' => 'integer', 
     'length' => 4, 
     'unsigned' => 0, 
     'primary' => true, 
     'autoincrement' => true, 
     )); 
    $this->hasColumn('customerEmail', 'string', 255, array(
     'type' => 'string', 
     'length' => 255, 
     'fixed' => false, 
     'primary' => false, 
     'notnull' => true, 
     'autoincrement' => false, 
     )); 
    $this->hasColumn('vendorID', 'integer', 4, array(
     'type' => 'integer', 
     'length' => 4, 
     'unsigned' => 0, 
     'primary' => false, 
     'notnull' => true, 
     'autoincrement' => false, 
     )); 
    $this->hasColumn('contactStatus', 'integer', 4, array(
     'type' => 'integer', 
     'length' => 4, 
     'unsigned' => 0, 
     'primary' => false, 
     'autoincrement' => false, 
     )); 
    } 
    Other member funcs ... 
} 

많은 없음.

vendorID 및 customerEmail 데이터를 보내는 양식이 있습니다. 별거 아니야.

컨트롤러의 전송 작업이 버튼 누름에서 올바르게 트리거됩니다. 승인.

하지만 제출 작업이 충돌하고 오류 메시지가 표시되지 않고 흰색 화면이 나타납니다. 나는이 시점에서 꽤 혼란 스럽다. (가) 조치를 제출

읽기 : 당신이 볼 수 있듯이

public function submitAction(){ 

    try { 
     $request = new MYAPP_Model_CustomerContactRequest(); 
    } 
    catch (Zend_Exception $e) { 
     echo "Caught exception: " . get_class($e) . "\n"; 
     echo "Message: " . $e->getMessage() . "\n"; 
    } 

    /* 
    $request = new MYAPP_Model_CustomerContactRequest(); 
    $request->customerEmail = $_GET['custEmail']; 
    $request->vendorID =$this->_targetExpertID; 
    $request->contactStatus = 1; 
    $request->save(); 
    */ 
} 

, 내가 저장 실제 기록을 주석 봤는데, 단순히 모델 클래스의 인스턴스를 시도하고있다.

나는 눈에 띄게 뻔뻔 스럽거나 정말로 어둡고 신비스러운 것을 놓치고 있어야합니다. 오류가 발생하기에 충분하지 않은 것 같습니다.

명세서 삭제 : $ request = new Knowbees_Model_CustomerContactRequest(); ... try 절에서 ... 아무런 차이가 없습니다.

인스턴스화를 주석 처리하면 모든 것이 정상인 것처럼 응답 페이지로 진행됩니다.

아무 것도 제안하지 않습니까? 나는 혼란 스럽다.

답변

0

!! @ $ @! $ # @ !!!

경로 문제였습니다! 대신

BASE_DIR\application\modules\MYAPP\models\CustomerContactRequest.php 

의 ...

BASE_DIR\application\modules\MYAPP\models\CustomerContactRequest\CustomerContactRequest.php 

:!

나는 경로에 @ # @ # 파일 CustomerContactRequest.php했다.
그리고 @ #! $ @! $ 클래스 이름 ...

MYAPP_Model_CustomerContactRequest 

... 정의가 바로 모델 디렉토리 아래에 있음을 의미한다!

일단 파일을 옮기면 전체 바보 같은 일이 생겨납니다.

=======

나는 깊이 로더에서 오류 메시지를 수신 할 수 없다는 것에 불평! 이 눈부시게 명백한 바보 오류는 오늘 밤 내 음주 시간을 심각하게 줄였습니다.

희망이 게시물은 언젠가 다른 사람을 돕습니다.

@ # @ $ # @ $ # $ # !!!