J'utilise le plugin "in_place_editing" pour les rails afin de rendre un formulaire avec des modifications sur place. Les choses fonctionnent bien tant que le modèle par défaut est choisi par rails (aucune méthode 'render' n'est invoquée dans le contrôleur), mais elles tombent en panne quand j'essaye de rendre un partial en utilisant l'appel "render: partial => 'partial_name'". Est-ce un problème connu (in_place_edit ne fonctionne pas avec les partiels?) Ou est-ce que je manque quelque chose? Je reçois l'erreur suivante tout en rendant la partie:Comment utiliser le plugin in_place_edit pour les rails avec partiels?
Called id for nil, which would mistakenly be 4 -- if you really wanted the id of nil, use object_id
.../vendor/plugins/in_place_editing/lib/in_place_macros_helper.rb:74:in `in_place_editor_field'
Mes excuses pour le manque d'information. Mais j'essayais d'utiliser le plugin in_place_editing juste après avoir lu le README qui a essentiellement 2 lignes (une pour le changement dans le contrôleur et l'autre dans la vue). Ce que je réalise maintenant est une grosse erreur! J'ai découvert que le plugin a besoin d'une variable d'instance avec le nom exact en tant que modèle défini pour que cela fonctionne. Je souhaite que le fichier README soit un peu plus explicite (peut-être une troisième ligne sur la définition de la variable d'instance). Merci pour votre réponse, vous avez parfaitement saisi l'erreur avec juste l'information que j'ai donnée :) – Raghu
Yep. Malheureusement, Rails est très inégal pour la documentation. Le noyau est assez bien couvert maintenant - Rails Guides était un grand pas en avant - mais la même chose ne peut pas être dite pour beaucoup de plugins et de gemmes connexes. Votre problème particulier est dû à l'une des nombreuses erreurs d'API dans le plugin d'éditeur in situ d'origine. J'ai écrit un remplaçant pour contourner une énorme vulnérabilité XSS qu'il avait auparavant et il a encore quelques fonctionnalités qui manquent au plugin de base. Bougie éhontée: http://rubyforge.org/projects/safeinplaceedit/ –