If I have an array of entities loaded from a temp relation using ORMExecuteQuery()
, how can I use EntityDelete()
to delete all entities.
I have tried EntityDelete( tempArr )
but it does not work. However, I am able to iterate through the array and add each entity with additional info into a new final relation.
Here is my cfscript
code:
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
}
Error:
- Object passed is not a valid entity.
Use EntityDelete( tempArr[i] );
at the end of the for-loop.
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!!
}
}
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments