La gem que vous utilisez a un comportement inattendu ? Allez lire le code ! Mais il est parfois fastidieux de trouver où est la gem, et gemedit facilite la vie en ajoutant une commande edit à gem. $ sudo gem install gemedit $ gem edit gemedit Vous pouvez indiquer l’éditeur que vous voulez lancer [...]
Traduction de la section « Resources and Resource Identifiers » de la thèse de Roy T. Fielding. 5.2.1.1 Ressources et identificateurs de ressources La ressource est le fondement de l’abstraction de l’information dans REST. Toute information qui peut être nommée peut être une ressource : un document ou une image, un service momentané (par exemple [...]
En cours de développement, vos modifications de feuilles de style n’apparaissent pas sur le site ? C’est normal ! La structure de l’application est complexe. Si vous respectez l’architecture recommandée (version 0.11), vos feuilles de styles sont dans vendor/extensions/theme_xxxx/public/stylesheets/ (si votre thème s’appelle xxxx). Le serveur web n’est pas configuré pour aller chercher les assets [...]
Un jour ou l’autre vous allez avoir besoin d’une gem qui exige une version plus récente de Ruby. Par exemple sqlite3. $ sudo gem install sqlite3 Password: ERROR: Error installing sqlite3: sqlite3 requires Ruby version >= 1.9.1. Mais vous utilisez des gems qui ne sont pas compatibles avec Ruby 1.9 et vous devez donc faire cohabiter [...]
have_tag (RSpec) et assert_select (Rails) facilitent le test des vues grâce à une syntaxe proche de celle du CSS. Vérifions par exemple la présence d’un titre qui contient le texte Subtitle et d’un formulaire (id= »swap ») avec deux boutons radio et un bouton de soumission (class= »button_save ») : response.should have_tag(« h2″, /Subtitle/) response.should have_tag(« form#swap[method=post]« ) response.should have_tag(« form#swap input[type=radio][name=?]« , ‘part1′) response.should [...]
Capistrano est un outil de déploiement puissant et facile d’emploi, dont j’ai déjà parlé. Il tourne sous Windows, Mac OS et Linux (entre autres) et est d’une mise en service aisée si l’on connait ssh et subversion. C’est pourquoi j’ai été fort (désagréablement) surpris quand mon récent cap deploy a échoué avec le message d’erreur [...]
Une spécification de vue sous RSpec pourrait ressembler à ça : it "should render column titles" do render "/feeds/index.html.erb" response.should have_tag("tr>th", "name") response.should have_tag("tr>th", "url") end Mais cette méthode ne permet pas de tester les bribes de HTML qui sont produites dans un content_for. En effet, ces bribes sont incluses directement dans le layout, pas dans [...]
Bon, ce n’est pas vraiment un opérateur, mais l’idiome est assez répandu et peut surprendre. Il est utilisé pour convertir nil en false, ce qui peut éviter des tests spécifiques comme if variable.nil? Deux petits rappels : ! est l’opérateur de négation logique. Seuls false et nil ont la valeur booléenne FAUX. Tout le reste [...]
15 septembre 2008 – 20:47
Il est fréquent que les applications aient besoin, pour fonctionner, de données initiales dans la base de données. Il y a plusieurs avis dans la communauté sur le moyen de charger ces données. Aucune méthode préférentielle ne se dégage. En particulier, les méthodes proposant de créer les données de test avec le code de l’application [...]
14 septembre 2008 – 23:45
Je suis en train de traduire les fichiers de régionalisation (l10n, de l’anglais localization) de l’application de démonstration de Clemens Kofler. L’internationalisation de Rails sera intégrée dans la version 2.2 qui est prévue pour la fin de l’année