nested form + partial + collection_select [No novato]

¡Hola! Tengo lo siguiente:

Una página donde esta mi modelo docencia que a su vez le voy agregando todos los dictados de carreras:

  <fieldset>    <% f.fields_for :dictados do |dictado_form| %>    <%= render :partial => 'dictado', :locals => { :f => dictado_form } %>    <% end %>    <%= add_child_link "Agregar un dictado de carrera", f, :dictados %>   </fieldset>

En el partial de dictado carrera tengo lo siguiente:

<%= render :partial => './shared/carreras' %>

Y el partial de carrera tiene lo siguiente:

<%= collection_select(@mcarrera.to_s, "codcarrera", Carrera.find(:all, :order=>"nombre"), :codcarrera, :nombre,    {:prompt => "", :selected => @codcarrera.to_i}) %>

Esto es porque una de las cosas que quiero saber es en que carrera dió clases el docente. Ahora, me funciona todo bien salvó que no va correctamente el dato de codcarrera por POST.

Se preguntarán porque '@mcarrera'... Porque en otras vistas uso el mismo partial y ese '@mcarrera' lo seteo con el nombre del modelo para que el datos de codcarrera vaya por el POST asociado al modelo y se guarde de una.

En fin, lo que tendría que lograr al ver el código html es: 'docencia[dictados_attributes][?][codcarrera]' pero no se como hacerlo

Otro problema es que al editar como hago para que queden seleccionadas las carreras en caso de ser más de uno el dictado?

Espero haberme expresado bien y puedan ayudarme. Seguramente a alguién le paso pero no encontré nada por acá. Gracias!