Usar form_for con recursos anidados

Estoy creando una aplicación para hacer en un intento de hablar con fluidez con Rails. Hay cuatro niveles de jerarquía en mi aplicación.

UsuarioObjetivos (objetivos múltiples por usuario)Tareas (múltiples tareas por objetivo)Subtareas (varias subtareas por tarea)

Tengo un formulario de front-end funcional para cada uno de estos que utiliza recursos anidados. My routes.rb tiene algo como esto

 resources :goal do
  resources :task do
    resources :subtask
  end
 end

Lo que me gustaría hacer ahora es tener todos estos formularios en una de las vistas del controlador de usuario.

Este es el formulario que he intentado crear:

<%= form_for @task, url: {controller: 'task', action: 'create'} do |f| %>

 <%= f.label :description %>

 <%= f.text_field :description %>

 <%= f.submit "Add Goal", class: "btn" %>

<% end %>

Pero termino recibiendo este error

No route matches {:action=>"create", :controller=>"task", :id=>"1"}

El: id => 1 corresponde a la página de usuario en la que estoy (http: // localhost: 3000 / user / 1)

Lo que entiendo es que existe que en ninguna parte he proporcionado el objetivo_id para el que está destinado este paso. No tengo idea de cómo implementar esto.

Otra cosa que he notado es que una respuesta arake routes muestra muchas rutas URI pero nada para el método POST. No me permite usar una ruta desde allí en elurl: enform_for porque no coincide con el método POST.

Entonces mis preguntas son:

¿Cómo enrutar un formulario_para eso cuando tiene recursos anidados?¿Cómo proporcionar la ID del recurso principal mientras uso form_for para que mi acción de creación se enrute correctamente?

Respuestas a la pregunta(1)

Su respuesta a la pregunta