如果我使用ORMExecuteQuery()
从临时关系加载了一组实体,我如何使用EntityDelete()
删除所有实体。
我尝试了EntityDelete( tempArr )
,但它不起作用。但是,我能够遍历数组并将每个实体添加其他信息到新的最终关系中。
这是我的cfscript
代码:
tempArr = ORMExecuteQuery( "FROM TEMP WHERE CartID=#FORM.CartID#" );
transaction {
for( i=1; i LTE ArrayLen(tempArr); i=i+1 ) {
reg = EntityNew( "register" );
reg.setFirstName( tempArr[i].getFirstName() );
........
EntitySave( reg );
ORMFlush();
}
EntityDelete( tempArr );//<<== THIS IS NOT DELETING THE ENTITIES
}
错误:
- Object passed is not a valid entity.
答案 0 :(得分:0)
在for循环结束时使用EntityDelete( tempArr[i] );
。
tempArr = ORMExecuteQuery( "FROM TEMP WHERE CartID=#FORM.CartID#" );
transaction {
for( i=1; i LTE ArrayLen(tempArr); i=i+1 ) {
reg = EntityNew( "register" );
reg.setFirstName( tempArr[i].getFirstName() );
........
EntitySave( reg );
ORMFlush();
EntityDelete( tempArr[i] );//<<== THIS WORKS!!
}
}