I have two tables. UserFavourites and Action. UserFavourites has Action as its property (column). I want the system to delete UserFavourite row, when related Action is deleted in Action table. Currently, When I delete a row in Action table, that is child of UserFavourites, UserFavourites has empty column for Action column, but it is not deleted as I wish to. Thank you very much!
EDIT: I thought I’d load related UserFavourites object and delete it like this:
ActionCreation* uf = [self.myActions objectAtIndex:self.selectedIndex.row];
BackendlessDataQuery query = [BackendlessDataQuery query];
Fault fault=nil;
query.whereClause = [NSString stringWithFormat:@“favouriteAction.objectId =’%@’”, [uf objectId]];
@try{
BackendlessCollection relatedUserFavourites =[backendless.persistenceService load:uf relations:@[@""]error:&fault];
//code for delteing from backendless
}@catch (Fault *fault) {
NSLog(@“FAULT = %@ <%@>”, fault.message, fault.detail);
}But I get Exception:
-[ActionCreation allKeys]: unrecognized selector sent to instance 0x7fa8b0fc59c0
2015-03-11 19:57:03.157 ActionPlusChetech[1468:76482] *** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘-[ActionCreation allKeys]: unrecognized selector sent to instance 0x7fa8b0fc59c0’
*** First throw call stack:
(
0 CoreFoundation 0x000000010c476a75 __exceptionPreprocess + 165
1 libobjc.A.dylib 0x000000010c10fbb7 objc_exception_throw + 45
2 CoreFoundation 0x000000010c47dd1d -[NSObject(NSObject) doesNotRecognizeSelector:] + 205
3 CoreFoundation 0x000000010c3d59dc forwarding + 988
4 CoreFoundation 0x000000010c3d5578 _CF_forwarding_prep_0 + 120
5 ActionPlusChetech 0x00000001098322a2 -[PersistenceService load:relations:] + 331
6 ActionPlusChetech 0x0000000109830ed7 -[PersistenceService load:relations:error:] + 30
7 ActionPlusChetech 0x00000001097f4bb7 -[MyActionsVC deleteButtonTapped] + 1767
8 ActionPlusChetech 0x00000001097f66be -[MyActionsVC pushMenuItem:] + 526
9 Foundation 0x000000010a611e3a -[NSObject(NSThreadPerformAdditions) performSelector:onThread:withObject:waitUntilDone:modes:] + 900
10 Foundation 0x000000010a611971 -[NSObject(NSThreadPerformAdditions) performSelectorOnMainThread:withObject:waitUntilDone:] + 132
11 ActionPlusChetech 0x00000001097f750d -[KxMenuItem performAction] + 157
12 ActionPlusChetech 0x00000001097f9940 -[KxMenuView performAction:] + 208
13 UIKit 0x000000010abc9a22 -[UIApplication sendAction:to:from:forEvent:] + 75
14 UIKit 0x000000010acd0e50 -[UIControl _sendActionsForEvents:withEvent:] + 467
15 UIKit 0x000000010acd021f -[UIControl touchesEnded:withEvent:] + 522
16 UIKit 0x000000010af77e80 _UIGestureRecognizerUpdate + 9487
17 UIKit 0x000000010ac0f856 -[UIWindow _sendGesturesForEvent:] + 1041
18 UIKit 0x000000010ac10483 -[UIWindow sendEvent:] + 667
19 UIKit 0x000000010abdcfb1 -[UIApplication sendEvent:] + 246
20 UIKit 0x000000010abea227 _UIApplicationHandleEventFromQueueEvent + 17700
21 UIKit 0x000000010abc523c _UIApplicationHandleEventQueue + 2066
22 CoreFoundation 0x000000010c3abc91 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17
23 CoreFoundation 0x000000010c3a1b5d __CFRunLoopDoSources0 + 269
24 CoreFoundation 0x000000010c3a1194 __CFRunLoopRun + 868
25 CoreFoundation 0x000000010c3a0bc6 CFRunLoopRunSpecific + 470
26 GraphicsServices 0x000000010ef49a58 GSEventRunModal + 161
27 UIKit 0x000000010abc8580 UIApplicationMain + 1282
28 ActionPlusChetech 0x00000001097ea9e3 main + 115
29 libdyld.dylib 0x000000010d106145 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb) I dont really understand this error. What -[ActionCreation allKeys]:has to do with taht? And there is no Backendless exception is caught. Thank you.
Hi Ibragim,
I cannot reproduce this situation.
Can you give me your project - I will investigate the problem.
My email is slavav@themidnightcoders.com
Hi Ibragim,
Just to clarify, do you want to have the effect of cascading deletion? Meaning when an object is deleted, all other related objects are deleted as well?
Regards,
Mark
Hi. Yes, I need UserFavourites object to be deleted automatically when ActionCreation object is deleted. If ActionCreation is included in UserFavourites. Yes, as you said - cascading deletion. Thank you.
Ibragim,
Cascaded deletion is planned for a future version. Currently, it would need to be done as a separate API call.
Regards,
Mark