Opened 13 years ago
Last modified 11 years ago
#17508 assigned New feature
DateDetailView should accept less specific dates, ie Year/Month or just Year
Reported by: | AndrewIngram | Owned by: | Moon Limb |
---|---|---|---|
Component: | Generic views | Version: | dev |
Severity: | Normal | Keywords: | |
Cc: | andy@…, hirokiky@…, moonlimb@… | Triage Stage: | Accepted |
Has patch: | yes | Needs documentation: | yes |
Needs tests: | yes | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
DateDetailView currently expects segments for year, month and day in the URL. This introduces the requirement to have an archive page for each level of the date; ie a year archive, a month archive, and a day archive:
/2012/
/2012/jan/
/2012/jan/06/
/2012/jan/06/blog-entry-name/
I don't think I'm inaccurate in saying that most bloggers (as opposed to news sites) don't usually create more than one post a day, and many (myself included) have a frequency of much less than once per month. This means we're introducing views such as day archive that have exactly the same information as the higher levels. As a URL purist, I don't like unnecessary segments in my schema and unnecessary pages in my information architecture.
In my case my URL structure is as follows, I don't use DayArchive at all:
/2012/
/2012/jan/
/2012/jan/blog-entry-name/
I've achieved this by creating my own version of DateDetailView that removes the use of DayMixin, but I think this can also be achieved by modifying DateDetailView itself to allow looser date matching using configuration of the view itself.
Is this a common enough use case to be worth making the change in Django itself? I think it can be done without affecting backwards compatibility.
Attachments (1)
Change History (7)
comment:1 by , 13 years ago
Triage Stage: | Unreviewed → Accepted |
---|
comment:2 by , 13 years ago
Owner: | changed from | to
---|
comment:3 by , 13 years ago
Owner: | changed from | to
---|
by , 12 years ago
Attachment: | t17508_1.diff added |
---|
comment:4 by , 12 years ago
Cc: | added |
---|---|
Has patch: | set |
Needs documentation: | set |
Needs tests: | set |
Version: | 1.3 → master |
I added a patch.
Now, DateDetail takes a attribute to set the unity of dates named date_separate_unit.
The attribute allows a vaule, which daily, monthly or yearly:
- daily: /2012/jan/06/blog-entry-name/
- monthly: /2012/jan/blog-entry-name/
- yearly: /2012/blog-entry-name/
How do you feel about this behavior and implementation?
I think it is better to hear someone's opinion.
comment:5 by , 11 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:6 by , 11 years ago
Cc: | added |
---|---|
Owner: | changed from | to
Patch to accept less specific dates for DateDetailView.