Reputation: 85
What would be the accepted convention for displaying a date range in a friendly URL?
For example, in a time tracking application. Instead of using the database's primary key for a specific pay period in the URL, I would like to use something more easily distinguishable to the user.
http://www.mytimesheet.com/11-1-2009-11-14-2009
http://www.mytimesheet.com/period-beginning-11-1-2009
Neither of those seem to cut it, but maybe I'm just being overly critical.
Upvotes: 8
Views: 2072
Reputation: 109100
Have you considered ISO format dates, especially in their compact form: YYYYMMDD
, then it should be possible to have:
http://example.com/dates/20091101/20091131
Specifically I don't think there is any accepted convention for this.
Edit: this is about routing as well...
Upvotes: 8
Reputation: 899
I'd say it's up to you, but I like the idea of
http://foo.com/bar/from/2008/
http://foo.com/bar/from/2008/10/
http://foo.com/bar/from/2008/10/02
Or, it can be combined with something like /between/2008/10/2009/10
and such.
Upvotes: 2
Reputation: 31232
I'd either use something like:
http://www.mytimesheet.com/start/11-1-2009/end/11-14-2009
or
http://www.mytimesheet.com?start=11-1-2009&end=11-14-2009
But what daniel says, you could convert this in a post so you hide it altogether, if that is possible.
Upvotes: 1
Reputation: 2245
Personally I think this is the sort of data that is best POSTed, rather than used to specify a route.
(sometimes if the solution seems broken in this way, then maybe the approach is incorrect.)
However, if you really want to specify dates, perhaps you should consider a format that is more likely to be understood in a consistent way in all cultures, such as yyyy-mmm-dd (e.g. 2009-nov-11)
Upvotes: 0