Marcus S. Zarra , . Core Data .
, . ApartmentLease , , . .
. . , , .
:
Apartment {
number:int;
leases<--(optional,cascade)-->>lease.apartment
}
Lease{
startOn:date;
endOn:date;
occupantName:string;
monthlyRate:float;
occupantPhone:string
apartment<<--(required,nullify)->Apartment.leases
}
Apartment.leases .
NSManageObject *anApartment=
NSPredicate *rangePred=[NSPredicate predicateWithFormat:@"startOn <= %@ && endOn >= %@", startReferenceDate, endReferenceDate];
NSSet *leases=[anAparment valueForkey:@"leases"];
NSSet *leasesInDateRange=[leases filteredSetUsingPredicate:rangePred];
, , , NSManagedObject , . , bool : inForce, . :
-(BOOL) inForce{
BOOL isInForce;
NSDate *today=[NSDate now];
if (self.starOn<today<self.endOn){
isInForce=YES;
}else{
isInForce=NO;
}
return isInForce;
}
, , ForForce, , , .