I am trying to create a new teacher for a specific school in my project and I got this error:
No route matches [POST] "/schools/3/teachers/new"
Here is my teachers_controller.rb:
class TeachersController < ApplicationController
  def new
    @teacher = Teacher.new
  end
  def create
    @teacher = Teacher.new(teacher_params)
    @teacher.save
    redirect_to school_path(school)
  end
  private
    def teacher_params
      params.require(:teacher).permit(:firstName, :lastName, :middleName)
    end
end
schools_controller.rb:
class SchoolsController < ApplicationController
  def show
    @school = School.find(params[:id])
  end
  def new
    @school = School.new
  end
  def edit
    @school = School.find(params[:id])
  end
  def update
    @school = School.find(params[:id])
    if @school.update(school_params)
      redirect_to @school
    else
      render 'edit'
    end
  end
  def index
    @schools = School.all
  end
  def create
    @school = School.new(school_params)
    if @school.save
      redirect_to schools_path
    else
      render 'new'
    end
  end
  def destroy
    @school = School.find(params[:id])
    @school.destroy
    redirect_to schools_path
  end
  private
    def school_params
      params.require(:school).permit(:name)
    end
end
routes.rb:
Rails.application.routes.draw do
  resources :schools do
    resources :teachers
  end
  # The priority is based upon order of creation: first created -> highest priority.
  # See how all your routes lay out with "rake routes".
  # You can have the root of your site routed with "root"
  root 'welcome#index'
And teachers/new.html.erb:
<%= form_for :teacher, url: school_teachers_path(school) do |f| %>
  <p>
    <%= f.label :firstName %><br>
    <%= f.text_field :firstName %>
  </p>
  <p>
    <%= f.label :lastName %><br>
    <%= f.text_field :lastName %>
  </p>
  <p>
    <%= f.label :middleName %><br>
    <%= f.text_field :middleName %>
  </p>
  <p>
    <%= f.submit %>
  </p>
<% end %>
 
     
    