Hallo Torsten..

es geht jetzt alles.

Ich hatte keine Beispiele gefunden für das update von verschachtelten resourcen... hört immer alles beim create auf..

class Client < ActiveRecord::Base
has_one :svasset, :dependent=> :destroy

class Svasset < ActiveRecord::Base
belongs_to :client

map.resources :clients do |client|
    client.resource :svassets
 end

<% form_for(@client) do |f| %>
<%= f.label :vorname %
<%= f.text_field :name %>
.....
<%fields_for :svassets do |asset|%>
<%= asset.label :bezeichnung %><br />
 <%= asset.text_field :bezeichnung %>

update habe ich jetzt so gemacht:

def update
@client = Client.find(params[:id])
@svassets = Svasset.find_by_client_id(params[:id])

if @client.update_attributes(params[:client])
@svassets.update_attributes(params[:svassets])


Weiß nicht ob das besonders chick ist..aber es funktioniert.

new und edit jetzt noch als partial auslagern.

Gruß


Am 01.09.2008 um 17:19 schrieb Torsten Schoenebaum:

Werner Laude schrieb:

Am 01.09.2008 um 11:15 schrieb Sven Jansen:

Hallo Sven..

danke für den Tipp
<%fields_for
hatte ich dann auch im Buch gefunden

New und delete klappt jetzt, fehlt nur noch update..

An welche URL geht denn dein Formular jetzt? Ich habe mich bis eben auch
mit einem Routingfehler beim Update rumgeärgert ("no action
responded to 1") bis mir auffiel, dass ich die falsche URL im Formular
verwendet hatte. Mein Beispiel:

Funktioniert nicht:
<% form_for(
    @image,
    :url => recipe_images_path(:recipe_id => @recipe.id),
    :html => { :multipart => true }
  ) do |f| %>
(ergibt als Pfad /recipes/1/images)

Funktioniert:
<% form_for(
    @image,
    :url => recipe_image_path(
      :recipe_id => @recipe.id,
      :id => @image.id
    ),
    :html => { :multipart => true }
  ) do |f| %>
(ergibt als Pfad /recipes/1/images/1)

Kleiner, dummer Fehler...

Viele Grüße,
Torsten
_______________________________________________
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