Développement Web Ruby
par Sylvain CLAUDEL

Derniers posts

Timecop : le gem qui permet de voyager dans le temps et le stopper comme Hiro Nakamura

Date d'édition 2011-12-06 à 16:17

Timecop est donc un gem qui permet de voyager dans le temps et le stopper. De la même manière que FakeWeb, j'ai découvert Timecop sur https://railscasts.com/episodes/276-testing-time-web-requests?view=asciicast

Page de doc et source : https://github.com/jtrupiano/timecop

Très pratique pour les tests, mais également pour effectuer des simulations utilisant le temps.

Article à lire sur les mocks (https://fr.wikipedia.org/wiki/Mock_(programmation_orient%C3%A9e_objet)).

Bon code.

FakeWeb : un gem qui permet de simuler une réponse via Net::http en ruby

Date d'édition 2011-12-06 à 16:13

Le gem est apparu dans un railscast, il n'y a pas longtemps.

Voici la doc : https://fakeweb.rubyforge.org/ qui est très bien faites d'ailleurs. Pratique pour les tests unitaires et fonctionnels de méthode qui utilise une API distante.

Article à lire sur les mocks (https://fr.wikipedia.org/wiki/Mock_(programmation_orient%C3%A9e_objet)).

Bon code.

Changer une colonne (champ) de toutes les lignes d'une table (instances de model) avec rubyonrails

Date d'édition 2011-12-02 à 09:09

Il peut être avantagieux de changer une colonne dans toute une table :

MonModel.update_all(:attribut_en_question => valeur)

Exemple :

Product.update_all(:price => 10.0)

C'était la petite astuce du jour !

Importer un fichier sql dans une base de données postgresql

Date d'édition 2011-12-02 à 08:42

Une fois connecté à la console postgresql (psql) vous pouvez taper :

\i [NOM DU FICHIER]

Exemple :

\i /home/moi/Bureau/mon_fichier_sql.sql

Si vous avez d'autres solutions n'hésitez pas.

Vos sessions sont trop grosses ! (Erreur : TypeError (can't dump File))

Date d'édition 2011-11-30 à 15:06

Voici l'erreur que j'ai obtenu sur du vieux code :

TypeError (can't dump File):

  activerecord (3.X.X) lib/active_record/session_store.rb:54:in `dump'

Cela viendrait de la taille des sessions (ça peut également des données non-sérialisables). A la fin de la méthode :
session[:qqch] = nil
Résoud le problème, il ne reste plus qu'à refactoriser votre code pour ne plus stocker des objets ruby mais plutôt des identifiants vers ces objets.

Voici l'article à lire : https://www.freezzo.com/2008/06/18/rails-typeerror-cant-dump-file/

Développement ruby et geekeries - rivsc