Is there a way to remove the trailing data from the django
I would like to only display days, weeks months or years without any trailing information. e.g weeks + days -> weeks, months + weeks -> months, years + months -> years, etc.
Additionally, if the date is less than one day, it should display the hours. e.g. 1 hour ago, 4 hours ago, etc.
Currently I have a datetime object and am using the filter like this:
You can make your own template tag and use it to modify the output of
timesince to be anything you like. Here's an example just to get you started:
def custom_timesince(value): now = datetime.datetime.now() # can add some error checking if you want diff = now - value if diff < timedelta(days=1): return "recently" # or w/e you wanted with the hours # remove trailing information from timesince return timesince(value).split(", ")
possibly helpful: docs on using such custom tags