2017-03-18 5 views
0
엔티티 매핑

반복 열의 매핑에 열을 반복 : 사용자 열 : 사용자 ID (= "false"를 삽입 = "false"를 업데이트 매핑한다)Lucee ORM - "오류 메시지가"엔티티

그것이 내가받는 오류 메시지입니다. 자체 참조하는 사용자 테이블 (고객) 있어요. 그렇게하면 어느 사용자가 언제 어떤 것을 생성했는지 알 수 있습니다.

여기 내 조직입니다.

component table="customer" output="false" accessors="true" persistent="true" { 
    property name="userid"  column="userid"  ormtype="int" fieldtype="id" generator="identity"; 
    property name="firstname" column="firstname" ormtype="string"; 
    property name="lastname" column="lastname"  ormtype="string"; 
    property name="email"  column="email"  ormtype="string"; 
    property name="active"  column="active"  type="boolean" ormtype="boolean"; 
    property name="createdOn" column="createdOn" ormtype="date"; 
    property name="modifiedOn" column="modifiedOn" ormtype="date"; 
    property name="createdBy" fieldtype="one-to-one" cfc="user" fkcolumn="userid" inverse="true"; 
    property name="modifiedBy" fieldtype="one-to-one" cfc="user" fkcolumn="userid" inverse="true"; 
} 

나는 그들이 지금처럼 보일 수 있도록 오류 메시지가 각 속성에 추가 알려줍니다 무엇을 추가했습니다 :

property name="createdBy" fieldtype="one-to-one" cfc="user" fkcolumn="userid" inverse="true" insert="false" update="false"; 
property name="modifiedBy" fieldtype="one-to-one" cfc="user" fkcolumn="userid" inverse="true" insert="false" update="false"; 

해결책 : 나는 = "용자 ID"inversejoincolumn 추가하고 일했다. 아래 참조

property name="createdBy"  column="createdBy"  fieldtype="one-to-one" cfc="user" inversejoincolumn="userid"; 
property name="modifiedBy" column="modifiedBy"  fieldtype="one-to-one" cfc="user" inversejoincolumn="userid"; 
+0

변경 한 후 'OrmReload()'를 호출 한 후에도 오류가 발생합니까? – CfSimplicity

+0

나는 그 열 (createdBy 및 modifiedBy)을 저장/업데이트 할 수 있어야합니다. 그러나 기본 키를 포함한 모든 userid 열에 해당 코드를 추가하면 작동합니다. 그러나 데이터를 저장해야하므로, 그것은 기술적으로 '일하지 않습니다'. – pendo

+0

identiy'userid' 속성에 추가 할 필요는 없습니다. 그러나 어쨌든 당신의 2 개의 자기 참조 관계에 대한 특정 키를 생성해야 할 필요가있는 것 같습니다. – CfSimplicity

답변

0

고객 테이블에는 작성 및 수정을 수행하는 사용자의 ID를 기록하기 위해 별도의 열을 생성하십시오. 전화 번호는 creatoridmodifierid입니다.

그런 다음 userid에서 각각 creatoridmodifieridcreatedBymodifiedBy 관계에서 fkcolumn을 변경합니다.