Tag: rails3

Beautiful Scaffold version 0.1.1

Plein de nouveautés dans Beautiful Scaffold. Tout d'abord les versions ne sont pas compatibles entre elles, donc vous ne devez pas changer la version de beautiful-scaffold dans votre...

ActiveResource Rails 3 et Rails 3.2 : 406 not Acceptable

J'utilise ActiveResource entre deux applications web. Je suis en train de migrer l'application de rails 3.0 vers rails 3.2 et là j'ai une erreur : ActiveResource::ClientError: Failed...

Créer une application rubyonrails avec une version spécifique de rails

Comment faire pour utiliser une version spécifique de rails ? Ce n'est pas très compliqué : rails _VERSION_. Exemples  rails _3.0.7_ new myapp rails _3.1.3_ new myapp rails _3.2.0_ n...

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

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 f...

Rails 3 default_scope et unscoped

Rails 3 a apporté un petit truc sympa le default_scope. Il permet d'appeler un scope par défaut sur un model. Par contre il peut être sympa dans certain cas d'éviter d'utiliser le de...

Gem prawn pdf pour rails : enfin une vrai documentation

Vous avez dû remarquer que j'ai récemment écrit quelques posts sur prawn la librairie ruby (et rails) pour générer des documents pdf je suis en train (pour une application) de passer...

Rails Prawn pdf : undefined method for #

Bon après quelques temps de recherche dans la doc de prawn sur github et sur majesticseacreature, j'ai trouvé par hasard.  Donc si vous avez cette erreur : undefined method `XXX' for...

Rails i18n - Mettre un texte de remplacement si la traduction n'existe pas

Après lecture du code source du module i18n de rails j'ai trouvé. Donc pour mettre un texte de remplacement si une traduction n'existe pas (translation missing), il faut utiliser l'o...

Number to human : chiffre en lettre en ruby avec rubyonrails

Bon voilà dans rubyonrails, il y a un helper : number_to_human, qui est bien intéressant : https://api.rubyonrails.org/classes/ActionView/Helpers/NumberHelper.html#method-i-number_t...

Rails generate scaffold_controller

La commande "rails generate scaffold_controller" permet de générer les vues / routes / controller associés à un model déjà existant. Malheureusement il ne va pas chercher l...

Comment passer un hash de paramêtres à la méthode can de CanCan

Vous connaissez certainement CanCan le système de gestion des droits pour les applications rubyonrails. Can admet 2 paramêtres fixe : - Le premier est une action ou un alias de plusi...

RubyOnRails was changed change pour les attributs des models

Dans les models rubyonrails il existe une tripotée de méthodes pour les attributs. Vous pouvez avoir un aperçu de ces méthodes dans le module ActiveRecord::Dirty (https://ar.rubyonra...

Rubyonrails to_json inclure exclure et appels de méthode

La sérialisation en json est bien pratique pour faire des API, en effet le json est beaucoup moins verbeux que le xml. De plus avec Rails 3.1 les exports ne se font plus avec xml mai...

Rails Admin : le phpmyadmin++ adapté à votre application

Rails Admin : le phpmyadmin made in RoR adapté à votre application. La seule chose que vous devez faire et correctement c'est le schema de la base de données, les relations, les dépe...

Will_paginate v3.0 pour rails 3.0 et rails 3.1 est sortie !

Grande nouvelle le gem will paginate pour la pagination des données dans rails 3 vient de sortir en version 3 ! Au menu plusieurs sortes de pagination : voir ici : https://mislav.uni...

Ruby Enterprise Edition erreur certificate verify failed avec Open-uri

Si vous avez cette erreur et que vous faites un open sur une url en https (avec ruby Enterprise Edition ou ruby 1.8.7 parfois), rassurez-vous vous n'êtes pas seul : SSL_connect retur...

Varargs en ruby pour gérer les OR sql dans un ActiveRelation

J'ai eu besoin récemment de faire des "ou" (or) avec ActiveRecord, pas moyen de faire des ActiveRelation car à chaque méthode where() appelée, ActiveRecord fait un "et...

Mettre des headers personnalisés dans les requêtes des tests fonctionnels et d'intégration de rubyonrails

Il peut être intéressant de spécifier des headers personnalisés pour les requêtes des tests fonctionnels (functional test) et des tests d'intégration (integration test). J'ai cherché...

RubyOnRails 3 ActiveRecord un cas d'utilisation d'has_many/belongs_to

Bon voici un bon cas bien complexe de relation à gérer avec rubyonrails 3 et ActiveRecord : Le but est de représenter les relations familiales (family_relationship) de personne (cont...

Surcharger les accesseurs par défaut dans les models de rails3

Il peut être intéressant de surcharger des accesseurs, par exemple changer le comportement d'un attribut et éviter de changer tout son code. Voici un petit exemple : class Product ...

Netbeans 7.0 pour faire du rubyonrails

Bon alors vous pouvez utilisé netbeans 7.0 pour faire du rubyonrails. 1) Téléchargez netbeans 7.0 ( https://netbeans.org/downloads/ ), elle n'existe pas encore en français, prenez l...

Activerecord-import le gem nécessaire pour les gros imports de données

Le Activerecord-import permet de faire des gros imports de données. Lors d'un gros import de données, au lieu de faire des saves à tire-larigot, il vaut mieux mettre les objets à sau...

Petites actuces pour rubyonrails 3

Voici des petites actuces pour rubyonrails 3. Obtenir le controlleur courant controller.controller_name Obtenir la méthode courante controller.action_name Récupérer l'host request.en...

to_json : inclure (include) des sous models et des méthodes dans la serialisation

Bon le to_json c'est cool mais il vous manque des informations dans votre sérialisation ? Pas de soucis il existe des options à to_json : :include => :model_a_inclure(s) ou pour u...

Pretty Printer du json en rails console (rubyonrails 3)

Voici deux fonctions qui permettent d'afficher du JSON joliement. Elles nécessitent le gem json donc dans le Gemfile : gem 'json', '>= 1.2.0' Donc ensuite :  bundle install Ensuit...

Les petits bouts de code bogués dans les applications RubyOnRails 3

Voici quelques exemples de portion de code buggé : 1) Gestion des id et relations Exemple de mauvais code : family = Family.new(:name => "Bla") product = Product.new(:fa...

Une fonction pour vider les tables associées aux models - rubyonrails 3

Voici une fonction pour vider les tables associées aux models dans une application rubyonrails 3. Soit en console, soit dans votre code, vous pouvez faire : ActiveRecord::Base.class_...

Bundle install ou cap deploy - `initialize': not in gzip format (Zlib::GzipFile::Error)

Si vous rencontrez cette erreur `initialize': not in gzip format (Zlib::GzipFile::Error), en faisant un bundle install ou via capistrano (cap deploy), ce doit très certainement être ...

Rendu json avec rails 3

Si vous souhaitez faire un rendu json : voilà comment procéder : Dans routes.rb : get "show_product/:id(.:format)" => "products#show_product" Dans votre contro...

Récupérer la liste des tables de la base de données dans une application rubyonrails 3 ActiveRecord::Base.connection.tables

Comme d'habitude tout est dans le titre :  Voici comment récupérer la liste des tables de la base de données dans une application rubyonrails 3 ActiveRecord::Base.connection.tables =...

Générer des graphiques et schemas de données à partir d'une application rubyonrails 3 avec RailRoady

Comme toujours le titre est explicite : RailRoady (fork de railroad pour rails 2.3) permet de générer des graphiques et schemas de données à partir d'une application rubyonrails 3. D...

Tutorial Rubyonrails 3 - Partie 4 - ActiveRelation et scopes - Arel

Partie 4 – Rails3 -  ActiveRelation et scopes N’hésitez à mettre des commentaires / à corriger mes fautes / à rajouter des choses ! Vous avez vu dans la partie 2 : post = Post....

PassengerPreStart sur Nginx + Phusion Passenger 3, pré-chargement des applications rubyonrails

Depuis passenger 3, il existe une directive qui permet de dire à nginx de faire une requête sur le serveur spécifié au démarrage d'nginx. Du coup l'application se pré-charge pour que...

Tutorial Rubyonrails 3 - Partie 3 - Création des relations entre les models (détail relation et migration)

Partie 3 – Rails3 -  Création des relations entre les models (détail relation et migration) N’hésitez à mettre des commentaires / à corriger mes fautes / à rajouter des choses ! ...

Votez pour rubyonrails

Sondage sur les langages web coté server : https://www.developpez.net/forums/d990473/webmasters-developpement-web/general-conception-web/langage-serveur-prefere-web/ Allez voter pou...

Synthese vocale en ruby avec espeak-ruby (espeak + lame)

Un gem vient de sortir, il utilise les librairies espeak et lame. Il génére un MP3 correspondant à du texte : https://rors.org/2010/10/21/espeak-ruby.html Essayez la demo c'est terri...

Tutorial Rubyonrails 3 - Partie 2 - Création des models (rails generate model)

Partie 2 – Rails3 -  Création des models (rails generate model) N’hésitez à mettre des commentaires / à corriger mes fautes / à rajouter des choses ! Allons-y notre blog a besoin...

Phusion Passenger 3.0.0 vient de sortir en version finale

Tout est dans le titre : passenger, le serveur rubyonrails vient de sortir dans sa dernière version (3.0.0) pour l'installer : sudo gem install passenger L'article sur le blog offici...

Tutorial Rubyonrails 3 - Partie 1 - MVC, model, view, controller (rails command)

Partie 1 – Rails3 - MVC, model, view, controller (rails command) N’hésitez à mettre des commentaires / à corriger mes fautes / à rajouter des choses ! Maintenant que vous avez cr...

Tutorial Rubyonrails 3 - Partie 0 - Arborescence d'un projet rails3 et environnement

Tutorial Rubyonrails 3 - Partie 0 - Arborescence d'un projet rails3 et environnement Il s’agit de la première partie d’une série de tutorials rubyonrails 3 pour les novices qui ne ...

readline rvm ruby 1.8.7 ou ruby 1.9.2

Erreur : `require': no such file to load -- readline Pour résoudre cette erreur, il faut installer le package readline avec rvm puis réinstaller ruby avec rvm. Pas de panique ça p...

rubyonrails 3 Hash.from_xml il manque des données (xml attributes)

Il est bien pratique dans rails (2 et 3) d'importer un xml sous forme de hash grâce à Hash.from_xml("blabla xml") ! Problème cette méthode saute des éléments du xml en part...

Theme_support pour rails 2 et rails3 themeing

Theme support était à l'origine un plugin qui permettait d'avoir des thèmes pour son application ruby on rails 1.X ou 2.X. Voici comment cela fonctionne. Un répertoire themes à la r...

Resque, redis, bluepill, background job à la queue pour rails

Resque, Redis et bluepill pour rails2.X ou 3 Resque permet de mettre des backgrounds jobs dans des queues dans rails. https://github.com/defunkt/resque Redis est une base de données ...

Rails3 - can't find executable rails for railties-3.0.0 (Gem::Exception)

Vous pouvez résoudre cette erreur en faisant : sudo gem install rails -v 3.0.0 Voilà c'est tout

Rails3 : Comment utiliser les helpers AJAX de rails2 avec jquery

Il faut réinstaller les helpers : rails plugin install git://github.com/rails/prototype_legacy_helper Installer jrails qui surcharge les helpers pour utiliser jquery Dans le gemfile ...

RubyOnRails 3 et will paginate pour la pagination

J'utilisai mislav_will-paginate ! Pour le passage à Rails 3 il faut modifier un peu son code : Dans le Gemfile gem 'will_paginate', '~> 3.0.pre2' Dans le controlleur ceci Product....

Installer rubyonrails 3.0.0 et ruby 1.9.2 avec rvm sur ubuntu 10.04

Je suppose que vous avez déjà un ruby (1.8.7) qui fonctionne. Il faut installer curl et git, si vous ne les avez pas : sudo aptitude install curl git-core Installation de RVM (ruby...

Installer Rubinius sur ubuntu

Comment installer la plus rapide implémentation de ruby du moment ? sudo aptitude install libreadline-dev git clone git://github.com/evanphx/rubinius.git cd rubinius ./configure rake...

Passez à rails 3, prenez des bonnes habitudes

Bon il y a pas mal de choses qui changent entre rails 2.3 et rails 3, voici une liste de vidéos histoire de connaitre les nouveautés et de gagner du temps. https://rubyonrails.org/s...