Я хочу сохранить данные от пользователя (родительская модель) при создании / редактировании магазина (дочерняя модель).
Мои модели:
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:
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
Страница магазина:
<% form_for @shop, :html => {:multipart => true} do |f| %>
<%- f.fields_for :user do |user| %>
<%= user.text_field :name, :live => true %>
<% end -%>
<% end -%>
Все примеры, которые я нашел о сохранении связанных моделей, приведены при сохранении от пользователя (родителя) N детей (модель моего магазина) В этих случаях я понимаю, где определить acceptpts_nested_attributes_for.
Мой случай обратный.
В: Как я могу сохранить данные пользователя при отправке в форму магазина?