Mon Dieu, vous avez demandé cela il y a 4 mois si vous avez probablement compris cela maintenant. J'ai également eu du mal à trouver un bon article sur la façon de le faire. Voici ce que j'ai compris:
Quelle que soit la page que vous voulez tirer cette boîte de dialogue, vous voulez avoir un div comme si (notez que vous ne voulez pas afficher ce encore):
<div id="person-form" title="Person" style="display:none"></div>
dans cette optique, vous voulez aussi un appel Ajax pour tirer cette boîte de dialogue:
<%= link_to 'Edit Profile', edit_person_path(person), :remote => true %>
de toute évidence, vous voulez que cette edit_person_path voie à une certaine action. Cette action devrait rendre une js.erb qui a quelque chose comme ce qui suit (en jQuery):
$("#person-form").dialog({
autoOpen: true,
height: 600,
width: 600,
modal: true,
title: 'Edit Person',
buttons: {
"Edit": function() { $("#edit_person_<%= @person.id %>").submit() },
},
open: function() {
$("#person-form").html("<%= escape_javascript(render('form')) %>")
},
});
Cela rendra une _form.html.erb partielle dans la boîte de dialogue.
Remarque: vous devrez également configurer le style jQueryUI pour que la boîte de dialogue s'affiche correctement.
Le must est juste utiliser JqueryUI.dialog. Vous n'avez pas besoin de rails spécifiques – shingara
Que voulez-vous dire par "récupère tout le code de dialogue du serveur"? Voulez-vous dire chercher le code jQuery qui peut créer le dialogue? Pourquoi ne pas simplement avoir ce code dans un fichier js qui est inclus dans votre mise en page ou vue? Si vous essayez de récupérer quelque chose avec lequel remplir la boîte de dialogue, c'est une histoire différente. – Samo
Hmm, y a-t-il plus à la question que je n'ai pas répondu ci-dessous? Si acceptable, j'apprécierais une acceptation de la réponse :) –