Ich versuche, ein Formular auf meiner new.html.erb-Seite zu erstellen, und es gibt mir eine undefinierte Methode `task_presentations_path'-Fehler.So verwenden Sie das Formular für polymorphe Verknüpfungen
= form_tag [@task, Presentation.new] do |f|
= f.label :summary
= f.text_field :summary
tasks_controller
def new
@task = Task.new
end
Routen
resources :presentations do
resources :tasks
end
Task-Modell
class Task < ApplicationRecord
belongs_to :taskable, polymorphic: true
has_one :task_type
has_one :task_status
end
Präsentationsmodell
class Presentation < ApplicationRecord
has_many :tasks, as: :taskable
end
Rake Aufgaben
presentation_tasks GET /presentations/:presentation_id/tasks(.:format) tasks#index
POST /presentations/:presentation_id/tasks(.:format) tasks#create
new_presentation_task GET /presentations/:presentation_id/tasks/new(.:format) tasks#new
edit_presentation_task GET /presentations/:presentation_id/tasks/:id/edit(.:format) tasks#edit
presentation_task GET /presentations/:presentation_id/tasks/:id(.:format) tasks#show
PATCH /presentations/:presentation_id/tasks/:id(.:format) tasks#update
PUT /presentations/:presentation_id/tasks/:id(.:format) tasks#update
DELETE /presentations/:presentation_id/tasks/:id(.:format) tasks#destroy
Ich würde 'Bündel exec Rake Routen laufen lassen | grep task "und sehen, wie diese Route aufgerufen wird. Sieht so aus als wäre es presentation_tasks_path, aber ich bin mir nicht sicher – mccalljt
Können Sie weitere Informationen über den Controller und das Modell hinzufügen? – Milind
ja ich habe aktualisiert. – brandoncodes