Bonjour a toutes et a tous,
Je suis nouveau dans l’univers Rails alors merci de ne pas me lincher si
je ne poste pas au bon endroit.
J’ai quelques soucis pour remplacer les 'Edit|Update|Delete" link_to des
scaffold par un bouton radio devant chaque ligne de la table et 3
boutons representant les actions ‘Edit’, ‘Update’ et ‘Delete’ en bas de
la liste.
Jusqu’ici j’ai fais un truc du genre:
(app/views/peoples/list.rhtml)
[…]
<% form_for :people, :url => { :action => :manage_people } do |form| %>
<% for people in @peoples %>
<%= submit_tag “Show” %>
<%= submit_tag “Delete” %>
<%= submit_tag “Update” %>
<% end %>
Et j’ai cree une methode manage_people dans le controller:
[…]
def manage_people
params[:id] = params[:people][:id]
case params[:commit]
when ‘Delete’: self.destroy
when ‘Show’: redirect_to :action => :show, :id => params[:id]
when ‘Update’: redirect_to :action => :update, :id => params[:id]
else redirect_to :action => :list
end
end
Mais pour etre honnete je trouve ca pas tres joli et puis surtout je
n’ai pas la possibilité comme ca de faire une demande de confirmation
pour le delete d’une ligne. Au debut j’avais mis des redirect_to pour
toutes les actions des boutons mais pour le destroy il faut un POST et
il me semble que redirect_to ne fait que des GET.
Alors si vous avez 2 minutes pour critiquer ce code et me dire comment
en faire un beau ou me donner l’url d’un example…
Merci.