Certains livres ont mentionné quelques gemmes pour décorer des nombres avec #days
, #megabytes
, #minutes
etc. Est-ce seulement dans ActiveSupport, ou y a-t-il une gemme plus petite qui fournit cette fonctionnalité pour l'usage dans (petit) gems non-rails? Je veux utiliser cette fonctionnalité dans le cadre d'un DSL dans un tout petit bijou.3.days.ago, 2.hours.from_now etc sans Rails?
Répondre
Je ne sais pas s'il y a un autre petit bijou d'ailleurs disponible ActiveSupport
, mais ce serait vraiment straight-forward pour faire une petite version vous:
class Fixnum
SECONDS_IN_DAY = 24 * 60 * 60
def days
self * SECONDS_IN_DAY
end
def ago
Time.now - self
end
end
3.days.ago #=> 2011-06-18 08:45:29 0200
from_now
peut être mis en œuvre comme ago
mais avec + self
et weeks
, hours
etc. comme days
en utilisant différentes constantes.
Cela semble être la façon dont je finis par aller, merci. Je pensais que la chose numérique avait commencé dans le projet de quelqu'un d'autre et qu'ActiveSupport l'a fusionné dans sa propre source. Je suis probablement en train de l'imaginer. – d11wtq
très beau travail !! –
ActiveSupport a cette fonctionnalité. Il faisait à l'origine partie de Rails mais peut maintenant être utilisé séparément.
Ceci est correct mais notez aussi que vous ne pouvez plus simplement '' 'require 'activesupport''''. L'OP devra être un peu plus explicite sur ce qu'il veut "exiger" de l'aide active. Si vous voulez juste du temps, vous pouvez '' require '' support_active/core_ext/numeric/time "' '' –
Je ne veux pas vraiment dépendre de tout ActiveSupport pour ça :) C'était en quelque sorte ce que j'essayais d'éviter . Mon Gem est juste une seule classe avec environ 30 lignes de code: P Mais merci pour la confirmation :) – d11wtq
@ d11wtq alors la réponse de Michael Kohl serait la voie à suivre. Il suffit d'étendre la classe fixnum avec quelque chose comme une méthode '' '' '''' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' –
Je trouve: https://github.com/kylewlacy/timerizer
- 1. Rails 2 Rails 3 conversion
- 2. fonction Shell/alias pour console/serveur rails etc, pour travailler avec des rails 2 et 3
- 3. rails 3 ressources "sans"
- 4. Rails 3 vs Rails 2 Routage Problème
- 5. url_for Rails 3 contre Rails 2 changé?
- 6. Migration de Rails 2 à Rails 3
- 7. Rails 2 voies à rails 3 conversion
- 8. Rails routes.rb 2 vs Rails 3
- 9. Rails 3 Time.now sans l'année?
- 10. Rails routes syntaxe - des rails 2 aux rails 3
- 11. Rails 3 utilisateur à Rails 2: Installation de gemmes sans gemfile?
- 12. Rails 3 - 2 projets sur localhost soudainement?
- 13. plusieurs associations entre 2 modèles - Rails 3
- 14. Comment obtenir URL sans 2% e% 23 ... etc
- 15. Regex $ 1, $ 2, etc
- 16. Conversion Rails 3 Rails 2: aides avec des blocs
- 17. Conversion de Rails 2 en Rails 3 gem
- 18. rails Mise à jour 2 routage aux rails 3
- 19. Comment puis-je convertir Rails 2 hachage à Rails 3?
- 20. Pour Rails 3 de routage de Rails 2
- 21. différence dans Rails 3 jointures vs Rails 2
- 22. Rails 2 à 3 rails link_to tag image_to
- 23. Rails 3 recherche de parents sans enfant
- 24. Rails 3 sélectionnez et onchange sans Ajax
- 25. Rails 3 Routes avec ou sans: id
- 26. Rails 3: requêtes sans injection sql
- 27. Rails 3 + MongoDB: Rendre Json sans champ
- 28. Rails 3 + Google Maps sans gemme
- 29. pages sans fin dans les rails 3?
- 30. Rails 3 - dit time_ago_in_words « Il y a environ 2 heures »
J'aime ce comportement aussi, et ont souvent voulu l'utiliser dans mes non-rails rubis projets. Bonne question ... – jaydel