¿Usa el modelo anidado de rieles para * crear * objeto externo y simultáneamente * editar * objeto anidado existente?

Utilizando Rails 2.3.8

Goal escrea un Blogger mientras que simultáneamente actualizando el modelo de Usuario anidado (en caso de que la información haya cambiado, etc.), O cree un nuevo usuario si aún no existe.

Modelo

class Blogger < ActiveRecord::Base
  belongs_to :user
  accepts_nested_attributes_for :user
end

Blogger controlador:

def new
  @blogger = Blogger.new
  if user = self.get_user_from_session
    @blogger.user = user
  else
    @blogger.build_user
  end
  # get_user_from_session returns existing user 
  # saved in session (if there is one)
end

def create
  @blogger = Blogger.new(params[:blogger])
  # ...
end

Formar

<% form_for(@blogger) do |blogger_form| %>
  <% blogger_form.fields_for :user do |user_form| %>
    <%= user_form.label :first_name %>
    <%= user_form.text_field :first_name %>
    # ... other fields for user
  <% end %>
  # ... other fields for blogger
<% end %>

Funciona bien cuando estoy creando un nuevo usuario a través del modelo anidado, pero falla si el usuario anidado ya existe y tiene una ID (en cuyo caso me gustaría que simplemente actualice a ese usuario).

Error

Couldn't find User with ID=7 for Blogger with ID=

Esta pregunta SO trata un problema similar, y solo la respuesta sugiere que Rails simplemente no funcionará de esa manera. La respuesta sugiere simplemente pasar el ID del elemento existente en lugar de mostrar el formulario, lo que funciona bien, excepto que me gustaría permitir modificaciones en los atributos del usuario si hay alguno.

@ Formas de rieles profundamente anidados usando belong_to no funcionan?

Sugerencias? Esto no parece una situación particularmente infrecuente, y parece que debe haber una solución.

Respuestas a la pregunta(3)

Su respuesta a la pregunta