IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ruby on Rails Discussion :

calculs des dates


Sujet :

Ruby on Rails

  1. #1
    Membre averti Avatar de Javix
    Inscrit en
    Juin 2007
    Messages
    531
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 531
    Points : 353
    Points
    353
    Par défaut calculs des dates
    Comment est-possible de calculer une différence en mois entre 2 dates précises, par exemple il y a 1 janvier 2007 et 1 janvier 2009?

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2003
    Messages : 127
    Points : 124
    Points
    124
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $ ./script/console
    Loading development environment (Rails 2.3.2)
    >> e = Date.today + 8.months
    => Tue, 01 Dec 2009
    >> s = Date.today
    => Wed, 01 Apr 2009
    >> (e.month - s.month) + 12 * (e.year - s.year)
    => 8
    Mon blog sur Ruby on Rails : 2dconcept

  3. #3
    Membre averti Avatar de Javix
    Inscrit en
    Juin 2007
    Messages
    531
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 531
    Points : 353
    Points
    353
    Par défaut
    J'ai trouvé une méthode 'advance' dans 'ActiveSupport::CoreExtensions:ate::Calculations module qui permet de faire ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    project_start_date = Date.today
    main_dead_line = Date.new(2010,5,1)
    date1 = project_start_date.advance( :months => 3)
    Comme ça je peux avancer de 'X' (3 dans ce cas) mois exactes.
    Le but - on doit envoyer des rapports tous 'X' mois durant la période entre project_start_date et main_dead_line. Et on peut aussi vérifier si la dernière date d'envoi tombe bien sur la 'main_dead_line' enfaisant une simple comparaison:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if date1 > main_dead_line
    #action à exéctuer vient ici
    end

  4. #4
    Membre averti Avatar de Javix
    Inscrit en
    Juin 2007
    Messages
    531
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 531
    Points : 353
    Points
    353
    Par défaut
    Ah, merci Mooki, ça aussi, ça pourra servir.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Algorithme sur le calcul des dates
    Par hersho dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 31/05/2013, 23h08
  2. Calculer des dates avec fonction Gel de temps
    Par maxdata dans le forum Langage
    Réponses: 4
    Dernier message: 06/12/2012, 13h01
  3. Comment calculer des dates
    Par Grosmou dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 28/02/2008, 13h25
  4. Calcul des dates et des jours ouvrés
    Par okparanoid dans le forum Langage
    Réponses: 2
    Dernier message: 08/12/2007, 16h50
  5. DataColumn avec un calcul sur des dates
    Par GeantVert13 dans le forum Accès aux données
    Réponses: 4
    Dernier message: 24/10/2006, 21h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo