Programmation

Des routes hors de l'ordinaire en Rails

Un des aspects intéressant de Ruby on Rails est la conversation d'URL en controller/action et paramètres de tout acabit.

Vous pensiez que le monde arrêtait avec la configuration par défaut? Il y a bien plus que la page par défaut et la séquence :controller/:action/:id à

Jean-Marc – Mar, 2007 – 05 – 22 21:41

Mais vous êtes brillant!

Dernièrement je vous parlait du problème causé par l'utilisation de Kernel.puts sous fast-cgi.

On se demande alors comment générer des traces sous Ruby on Rails.

Le framework vient avec

Jean-Marc – Ven, 2007 – 05 – 18 11:28

Des chiffres et des lettres (3e défi Ruby)

Vous connaissez l'émission "Des chiffres et des lettres"? Oui? Non?

Qu'importe, nous allons jouer un des jeux de l'émission qui s'intitule "Le compte est bon". La définition

Jean-Marc – Lun, 2007 – 04 – 30 12:32

TIMTOWTDI et la poésie en Ruby

Le 2e défi Ruby pour mélanger un jeu de carte permet d'exposer un aspect très intéressant du langage Ruby... la capacité d'expression du langage.

Comme en français, il y a bien des façon d'écrire

Jean-Marc – Jeu, 2007 – 03 – 15 21:42

Garder des données en cache avec classe

À tous ceux qui seraient tenté d'utiliser les propriétés de Classe en ruby pensez-y à deux fois.

Cette méthode, même si à première vue évidente, pour faire persister les données entre les appels sur le serveur sera rapidement une source de problèmes.

Une classe persiste en

Jean-Marc – Ven, 2007 – 02 – 23 16:38

Mélanger le jeu de carte (2e défi Ruby)

Le jeu de carte en Ruby a généré, au bureau, quelques discussions très intéressantes. Est-ce qu'il était correct de retirer une carte au hasard? Certains pensent que non, puisqu'en réalité on mélange le jeu de carte et dépendemment

Jean-Marc – Jeu, 2007 – 02 – 22 07:44

Houston nous avons une fuite... de mémoire

Les fuites de mémoires... le cauchemar des programmeurs. Je ne connais pas un langage de programmation qui sous une forme ou une autre ne connaît pas ce problème.

Eh bien, Ruby et Ruby on Rails ne font pas exception. Je suis à diagnostiquer un problème de fuite de mémoire en ce moment sur un projet Ruby on Rails. Ma première réaction fut la panique (enfin presque)...

Jean-Marc – Mer, 2006 – 12 – 20 23:16

Pluralisation dans le ActiveRecord de Ruby on Rails

Ruby on Rails fait la pluralisation des noms de tables dans le modèle automatiquement. Ça semble simple à prime abord, mais, comme je n'aime pas fouiller pour rien j'ai développé ce petit truc pour m'assurer du nom de la table à créer.

Premièrement, je génère le squelette du mon modèle avec la commande script/generate.

Ensuite, j'ouvre la console et je demande au modèle quelle est la table que l'ActiveRecord vas utiliser pour effectuer la recherche et les manipulations de données. Donc... pour notre modèle "Person" nous aurons:

#> ruby script/console
Loading development environment.
>> Person.table_name
=> "people"
>> # et si vous êtes paresseux vous pouvez même demander 
>> # à Ruby de vous donner le symbole à utiliser pour les scripts de migration...
>> Person.table_name.to_sym
=> :people

Simple... non?

Jean-Marc – Mar, 2006 – 12 – 12 11:18

Geler le temps en Ruby on Rails

Gérer le temps... à plusieurs reprises dans la création d'application la gestion mais surtout le contrôle du temps devient important. Par exemple, un système d'enregistrement avec expiration... ou une offre avec date de début et de fin.

Traditionnellement on changerait, à travers le code ou encore directement sur le poste de travail ou le serveur, l'heure et la date de la machine. En Ruby, grace à la capacité de redéfinition d'objets et de classes on peut simplifier et automatiser le processus... jusqu'à geler le temps... De cette façon il devient possible dans les tests unitaires automatisés de vérifier si le code se comporte correctement à une date précise, si les délais d'expirations et autres calculs sont correctes, et ce, sans avoir à changer l'heure sur l'horloge de son ordinateur.

J'ai découvert cette méthode simple

Jean-Marc – Lun, 2006 – 11 – 27 13:50
Flux XML