...

View Full Version : Problem saving associated models



ratamaster
08-30-2011, 05:22 PM
I want to save data from User(parent model) when creating/editing a Shop (child model).

My models:


class User < ActiveRecord::Base
has_one :shop, :dependent => :destroy
end

class Shop < ActiveRecord::Base
belongs_to :user
accepts_nested_attributes_for :user #!!!!!!!!!!!!
end

My Shop controller:


class ShopsController < ApplicationController
def new
@shop = Shop.new
#@shop.user = current_user
@shop.build_user
end
end

def create
@shop = Shop.new(params[:shop])

@shop.user = current_user
respond_to do |format|
if @shop.save
flash[:notice] = t(:shop_created)
format.html { redirect_to(@shop) }
format.xml { render :xml => @shop, :status => :created, :location => @shop }
else
format.html { render :action => "new" }
format.xml { render :xml => @shop.errors, :status => :unprocessable_entity }
end
end

end

Shop page:


<% form_for @shop, :html => {:multipart => true} do |f| %>
<%- f.fields_for :user do |user| %>
<%= user.text_field :name, :live => true %>
<% end -%>
<% end -%>


All examples that I found about saving associated models are when saving from User (parent) N children ( my Shop model). In those cases I understand where define accepts_nested_attributes_for.

My case is inverse.

Q: How can I save User data when submitting on Shop form ?



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum