Question

Je voudrais construire une vue qui permet à l'utilisateur d'obtenir une liste de choses qui se passent autour d'un certain temps.

Quelle est la meilleure façon de construire cette demande? Par exemple. Si je voulais tous les événements qui se produisent en ce moment je pouvais poster à / événements / 2009/09/29 / 8/23 /

Cela semble assez fastidieux, surtout si je veux avoir plusieurs dates dans une demande. Je pourrais finir avec les urls qui ressemblent à / événements / entre / 2009/09/29 / 8/23 / 2006/11/16/14/45 /

Y at-il un simple (javascipt) façon de convertir une date / heure à un horodatage et passer que comme un entier, que je peux ensuite convertir en un datetime dans la vue?

Était-ce utile?

La solution

J'utilise une structure d'URL plus lisible comme ceci:

/events/2009-09-29/0823/
/events/2009-09-29/0823/to/2009-10-10/2100/

Voici une base Javascript montrant pour construire cette structure:

function pad(number) {
    return (number < 10 ? '0' : '') + number
}
function simpleDate(date) {
    return date.getUTCFullYear() + '-' + pad(date.getUTCMonth()) + '-' + pad(date.getUTCDay())
}
function simpleTime(date) {
    return pad(d.getUTCHours()) + pad(d.getUTCMinutes())
}
var d = new Date();
alert('/events/' + simpleDate(d) + '/' + simpleTime(d) + '/');

Autres conseils

Vous pouvez faire quelque chose comme ceci:

var d = new Date ( "2009-09-30"); timestamp var = d.getTime () / 1000,0;

vous obtiendrez un horodatage en utilisant JavaScript.

  • / événements / 2009 / -> tous les événements en 2009
  • / événements / 2009/09 / -> tous les événements Août-09
  • / événements / 2009/09/29 / -> tous les événements du 29-Aug-09
  • / événements / 2009/09/29/8 / -> tous les événements de 8h00 à 08h59 le 29-Aug-09
  • / événements / 2009/09/29/8/23 / -> tous les événements à 08h23 le 29-Aug-09
  • / événements / 2009/09/29/8/23/10 -> tous les événements de 08h23 à 08h33 le 29-Aug-09
  • / événements / 2009/09/29/8 / 23/91 -> tous les événements de 08h23 à 09h54 le 29-Aug-09
  • / événements / 2009/09/29/8/10 -> tous les événements de 8h00 à 18h00 le 29-Aug-09
  • / événements / 2009/09/29/10 -> tous les événements du 29-Aug-09 à 8-Sep-09
  • / événements / 2009/09/2 -> tous les événements en Août et Septembre
  • / événements / 2009/2 -> tous les événements de 2009 et 2010
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top