I just started learning about and using Core Data
in my app. Whenever I fetch a list of my saved object, I want to make sure that I ALSO delete the objects that have been in Core Data
for longer than a week (will be less when I'm testing, obviously).
How do I get this done? Do these model objects already have an attribute like "createdAt" by default like when other databases give default values like "created_at" and "updated_at"?
If not, I'm thinking of adding a "createdAt" attribute of type Date
to my data model, but I'm still kind of confused on how to delete objects that are older than one week after fetching them from Core Data
.
Any help or advice would be appreciated, as I am still new to using this powerful tool. Thanks.
Core Data does not automatically create any data for you. That is business logic. If you want a created_at
property in your entity, add it and set it in the awakeFromInsert
method in your NSManagedObject
subclass. You can also set it externally to the object at creation time but putting it in the awakeFromInsert
tends to be more consistent.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With