Développement Web Ruby
par Sylvain CLAUDEL

Derniers posts

Activer les logs sql dans la console rails

Date d'édition 2016-07-08 à 14:09

Une fois la console rails démarrée (rails c), il suffit de faire :

ActiveRecord::Base.logger = Logger.new STDOUT

Lancer une requête sql contenu dans un fichier avec psql (postgresql)

Date d'édition 2016-02-15 à 13:49

Pour lancer une requête contenue dans un fichier avec psql, il suffit de faire : 

\i lefichier.sql

Pratique pour éditer la requête avec son éditeur préféré et l'importer sans copier/coller.

Utiliser la forme réduite de rescue

Date d'édition 2015-12-02 à 19:09

Hello,

Il existe une forme raccourci de begin rescue

Au lieu de faire

begin
mon_objet.bidule
rescue
nil
end

on peut utiliser :

(mon_objet.bidule rescue nil)

JS : Afficher un menu qui ce cache quand on clique ailleurs que sur un élément du menu

Date d'édition 2015-12-02 à 18:58

Cas d'utilisation : un menu déroulant qui s'affiche lors d'une recherche (le menu contient des éléments cliquables et quand on clique ailleurs sur la page on souhaite masquer le menu :

$(document).on('click', 'body', function(e){
// Quand on clique sur le body on cache la zone
$('#zone-a-cacher').hide();
});
$(document).on('click', '#zone-a-cacher', function(e){
// Evite que l'évènement ne soit propagé jusqu'au body
// (car sinon la zone serait de nouveau cachée)
e.stopPropagation();
e.stopImmediatePropagation();
});

Comment connaitre les changements qu'il y a eu sur un objet ActiveRecord immédiatement après un save ?

Date d'édition 2015-08-19 à 10:24


Avant de faire un save il est possible de connaitre les changements/savoir si un objet ActiveRecord a changé en appelant .changes ou changed?
Mais après un save ces fonctions renvoient respectivement [] et false. Il existe néanmoins la méthode previous_changes qui va renvoyer un hash avec la liste des attributes changés ainsi que leurs valeurs précédentes et actuelles.
Source : https://api.rubyonrails.org/classes/ActiveModel/Dirty.html#method-i-previous_changes
Développement ruby et geekeries - rivsc