CF-ORM如何映射这些字段/表

CF-ORM如何映射这些字段/表,orm,coldfusion,one-to-many,many-to-one,table-relationships,Orm,Coldfusion,One To Many,Many To One,Table Relationships,我有两张桌子 tb_员工 tb_订单 tb_员工具有以下字段 empID 名称 tbu订单包含以下字段 订单ID clientName 接受EMP(参考tb\U员工) 经批准的EMP(参考tb\U员工) 当我提取数据时 “emp”工作正常 “emp已批准”“显示emp已接受的数据 EMP未显示其自身的数据 有人知道如何在CF ORM中正确地映射这一点吗 我有很多失败 我可以把它们全部贴出来——但是,我认为这需要很长的时间 他们没有一个人工作 我想学习如何正确地规划这个场景正确的方法 我想我

我有两张桌子

  • tb_员工
  • tb_订单
  • tb_员工具有以下字段

  • empID
  • 名称
  • tbu订单包含以下字段

  • 订单ID
  • clientName
  • 接受EMP(参考tb\U员工)
  • 经批准的EMP(参考tb\U员工)
  • 当我提取数据时

    • emp”工作正常
    • emp已批准”“显示emp已接受的数据
    EMP未显示其自身的数据

    有人知道如何在CF ORM中正确地映射这一点吗

    我有很多失败

    我可以把它们全部贴出来——但是,我认为这需要很长的时间

    他们没有一个人工作

    我想学习如何正确地规划这个场景正确的方法

    我想我提供了足够的基本信息来绘制地图

    但是,由于大众的需求:()())

    我应该发布哪个“失败”

    我正在发布我的一个失败。(我有超过12次失败)

    12个不同的文件,介绍如何避免此操作。:)

    我已经改变了很多次了。把东西拿出来。增加了一些东西

    我只是想知道如何正确地映射这个场景

    tb_Orders.emp已批准。。。不断显示来自。。。tb_订单。已接受EMP

    tb\U员工

    <!---- properties ---->
    <cfproperty     name="empID"                    
            fieldtype="id" 
            setter="false" 
            column="empID_pk" 
            generator="native"  />
    
    <cfproperty     name="name" 
            type="string"  />
    
    
    
    <cfproperty     name="approved" 
            fieldtype="one-to-many" 
            cfc="tb_Orders" 
            fkcolumn="empApproved"  />
    
    <cfproperty     name="accepted" 
            fieldtype="one-to-many" 
            cfc="tb_Orders" 
            fkColumn="empAccepted"  />
    
    <!---- properties ---->
    <cfproperty     name="orderID"                      
            fieldtype="id" 
            setter="false" 
            column="orderID_pk" 
            generator="native"  />
    
    <cfproperty     name="clientName" 
            type="string"  />
    
    
    <cfproperty     name="empAccepted"  
            insert="false" 
            update="false" 
            fieldtype="many-to-one" 
            cfc="tb_Employees" 
            inverse="true"  />
    
    
    <cfproperty     name="empApproved"  
            insert="false" 
            update="false" 
            fieldtype="many-to-one" 
            cfc="tb_Employees" 
            inverse="true"  />
    
    
    
    tb\U订单

    <!---- properties ---->
    <cfproperty     name="empID"                    
            fieldtype="id" 
            setter="false" 
            column="empID_pk" 
            generator="native"  />
    
    <cfproperty     name="name" 
            type="string"  />
    
    
    
    <cfproperty     name="approved" 
            fieldtype="one-to-many" 
            cfc="tb_Orders" 
            fkcolumn="empApproved"  />
    
    <cfproperty     name="accepted" 
            fieldtype="one-to-many" 
            cfc="tb_Orders" 
            fkColumn="empAccepted"  />
    
    <!---- properties ---->
    <cfproperty     name="orderID"                      
            fieldtype="id" 
            setter="false" 
            column="orderID_pk" 
            generator="native"  />
    
    <cfproperty     name="clientName" 
            type="string"  />
    
    
    <cfproperty     name="empAccepted"  
            insert="false" 
            update="false" 
            fieldtype="many-to-one" 
            cfc="tb_Employees" 
            inverse="true"  />
    
    
    <cfproperty     name="empApproved"  
            insert="false" 
            update="false" 
            fieldtype="many-to-one" 
            cfc="tb_Employees" 
            inverse="true"  />
    
    
    
    试试看

    <cfproperty name="empAccepted" type="tb_Employee"
            fieldtype="many-to-one"
            cfc="tb_Employee"
            fkcolumn="empAccepted"/>
    
    <cfproperty name="empApproved" type="tb_Employee"
            fieldtype="many-to-one"
            cfc="tb_Employee"
            fkcolumn="empApproved"/>
    
    
    
    另外,在tb_员工上,如果你想控制这种关系,你可能需要级联和反转。。。像这样

    <cfproperty name="approved" type="Array"
        fieldtype="one-to-many"
        inverse="true"
        cfc="tb_Orders"
        fkcolumn="empApproved"
        singularname="tb_Order"
        cascade="all-delete-orphan"/>
    
    
    

    请记住,这是“对象”关系映射,而不是“关系表”映射。养成用“对象”和它们之间的关系而不是数据库来思考的习惯是个好主意。

    如果你发布你当前的映射,这会有所帮助。我想知道是否有人知道如何正确映射。这是绝对可能的。你能发布你的代码吗?我想展示我的代码-我的映射。我做了几个版本。没有一个能正常工作。我不确定我应该显示哪些“失败”。好的,我会尝试一下,然后公布结果。还有,我仍然试图在“对象”注释上思考“对象”,如果你的CFC真的被命名为“TBYORDER”,你可以考虑把它重命名为类似的命令。此CFC的每个实例代表一个订单。想想看,你在描述一个订单。ORM所做的唯一一件事就是将这个顺序与一些数据库规则联系起来。如何将此问题标记为“已回答”?谢谢!