hi holger,

wenn ich das problem richtig verstehe, möchtest du einen schon gespeicherten datenbank-eintrag ändern.

wenn du schon eine "map.resources :my_model_name" - regel für das betreffende model im routing stehen hast, brauchst du dazu weder zusätzliches routing noch helper -- das geht ganz "restful" mit einem PUT (der von rails automatisch auf die update-methode des controllers gemappt wird).

rails macht das mapping, wenn es vom client entweder einen HTTP PUT bekommt, oder wenn für den parameter "_method" der wert put übergeben wird. wenn du im template form_for(@my_instance) verwendest, fürgt rails den _method - parameter automatisch dem formular hinzu, sonst ist etwas mehr handarbeit gefordert um den parameter reinzubekommen (zusätzlicher parameter für form_tag o.ä., oder hidden field).

sorg dann dafür, dass die update-methode beim anklicken des (+) alle infos bekommt, die sie zum ändern des datensatzes benötigt -- id und entweder direkt das neue datum, oder eine info um wieviele tage das datum geändert werden soll.

nachdem du viele werte in einer tabelle stehen hast, könnte button_to auch hilfreich sein - siehe rails api doku: http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#M000914 .

hope this helps!

viele grüße,
phillip

---

Am 25.04.2008 um 21:50 schrieb Holger Hänisch:

Hallo,

ich benutze Rails 2 mit entsprechender REST Unterstüzung. Leider gibt
meine Literatur dazu nichts her.

Ich möchte in meiner Tabelle hinter einem Feld mit einem Datum ein Link
mit einem Plus Zeichen ausgeben. Der Link soll dann den Datensatz
übernehmen, das Datum um einen Tag erhöhen und dann in die Datenbank
schreiben.

Wenn ich jetzt explizit eine :action => :plus aufrufe geht das nicht.
Verstehe ich ja auch. Passt wohl nicht in die Konvention mit DRY und
REST.

Aber wie löst man denn so ein Problem. Über Routing oder Helper?

Grob beschrieben: Ein Link wird angeklickt, eine Methode aufgerufen die
eine Berechnung durchführt, dann wird der Wert in die Datenbank
geschrieben. Wie setzt man das um?

Danke für die Hilfe.

Holger
--
Posted via http://www.ruby-forum.com/.
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug

_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug

Antwort per Email an