Hi Deepak,
You could set up another model to track when something should be done to the tree; something like this:
class Tree(models.Model):
...
planted_date = models.DateField()
class Reminder(models.Model):
tree = models.ForeignKey(tree)
when = models.DateField()
what = models.CharField()
done = models.BooleanField()
So, when you create a tree, you get the current date and create the entries on the Reminder model. Somewhere, you can get the list of reminders with something like
to_do = Reminder.object.filter(Q(tree=tree_in_view) & Q(when_lte=datetime.datetime.today()) & Q(done_ne=True))
And throw this in the view -- it basically says "give me all the reminders for the tree I'm looking at in this point (say, you have a page for each tree, so this is the tree id), in which the reminder is from a date equal or before today (in case you don't want to show reminders for dates in the future) and which are not done (which you should also provide a way so the user can mark the reminder as "done" and not be bothered with it again).