2009-11-11 20 views
7

Jaka byłaby zaakceptowana konwencja dotycząca wyświetlania zakresu dat w przyjaznym adresie URL?Konwencja URL dla zakresu dat

Na przykład w aplikacji do śledzenia czasu. Zamiast używać klucza podstawowego bazy danych dla określonego okresu płatności w adresie URL, chciałbym użyć czegoś łatwiejszego do odróżnienia od użytkownika.

http://www.mytimesheet.com/11-1-2009-11-14-2009 
http://www.mytimesheet.com/period-beginning-11-1-2009 

Żadne z nich nie wydaje się, aby to przerwać, ale może po prostu jestem zbyt krytyczny.

+0

Dlaczego jest to powiązane z MVC? – skaffman

+0

Nie jest to specyficzne, więc tag został usunięty. –

Odpowiedz

7

Czy bierzesz pod uwagę termin formacie ISO, zwłaszcza w zwartej formie: YYYYMMDD, to powinno być możliwe, aby:

http://example.com/dates/20091101/20091131 

szczególności nie sądzę, istnieje jakikolwiek akceptowane konwencję w tej sprawie.

Edit: to o routingu, jak również ...

+0

To wydaje się być najczystszym rozwiązaniem, jakie widziałem i najbardziej prostym poza ciągiem zapytania. –

+2

+1. Może zawierać również '-'s, jeśli chcesz; jeśli używasz myślników, powinieneś * zawsze * stosować polecenie ISO8601 RRRR-MM-DD. – bobince

0

Osobiście uważam, że jest to rodzaj danych, które są najlepiej Wysłany zamiast używany do określenia trasy.

(czasami, jeżeli rozwiązanie wydaje złamane w ten sposób, to może podejście jest błędne.)

Jednakże, jeśli naprawdę chcesz, aby określić termin, być może należy rozważyć formacie, który jest bardziej prawdopodobne należy rozumieć w sposób spójny we wszystkich kulturach, takich jak rrrr-mmm-dd (np 2009-Nov-11)

+1

POST wydaje się tu naprawdę złym pomysłem, ponieważ złamałby prawie każdy rodzaj interfejsu użytkownika (bez zakładki, bez przeładowywania bez anoying popup jeśli w ogóle, bez przycisku wstecz). Zapytanie GET jest o wiele lepsze dla ..., dobrze, zapytań. Używaj POST tylko wtedy, gdy coś zmieniasz (np. Aktualizując rekord bazy danych), którego nie powinno się robić dwa razy. – falstro

+1

Także wysyłanie adresu URL do znajomego/współpracownika/etc przez komunikatory lub e-maile, jest czymś, co naprawdę mnie niepokoi. :) – falstro

1

Chciałbym użyć coś takiego:

http://www.mytimesheet.com/start/11-1-2009/end/11-14-2009 

lub

http://www.mytimesheet.com?start=11-1-2009&end=11-14-2009 

Ale co mówi Daniel, możesz to zmienić w post, więc ukryjesz go całkowicie, jeśli to możliwe.

2

Powiedziałbym, że to zależy od ciebie, ale podoba mi się pomysł

http://foo.com/bar/from/2008/ 
http://foo.com/bar/from/2008/10/ 
http://foo.com/bar/from/2008/10/02 

Albo, może to być połączone z czymś /between/2008/10/2009/10 i takie.

+0

Preferuję tę metodę, ponieważ sprawia ona, że ​​adres jest bardziej "czytelny dla człowieka/eksplorowany". –

+0

Chciałbym zaproponować alternatywną preferencję: 'http://foo.com/bar/from/2014-09- 01/'. Oznacza to datę podobną do formy pisemnej. Czy uważasz, że jest to bardziej czytelne dla człowieka? – Glycerine

Powiązane problemy