Pregunta

I am encountering a very strange error for that says the following:

Template is missing

Missing template /404 with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]}. Searched in: * "c:/Sites/jobapp/app/views" * "C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/devise-2.1.2/app/views"

This is strange because all of my other routes seem to be working correctly except for the following:

<%= Link_to "Add Job", new_user_job_path %>

I have my routes setup as follows:

 JobappV2::Application.routes.draw do
  devise_for :users

  resources :newsletters

  get "pages/advertise"

  get "pages/contact"

  get "pages/about"

  get "pages/terms"

  resources :jobs do
    collection { post :search , to: 'jobs#index' }
  end


  resources :users do
     resources :jobs
  end


   root :to => 'jobs#index'


  end

and so should be able to get to creating a user job using localhost:3000/users/1/jobs/new

In Jobs controller I have:

 def new
  @user = current_user
  @job = @user.jobs.build
 end

 def create
   @user = current_user
   @job = @user.jobs.create(params[:job])
  if @job.save
    redirect_to jobs_path
  else
    render new_user_job_path(current_user.id)
  end
  end

and in my Jobs new view I am using the following form method:

 <%= form_for [@user, @user.jobs.build] do |f| %>

If anyone has any idea what might be going wrong here it really would be much appreciated because I have been struggling for some time :(

Thanks!

¿Fue útil?

Solución

" render new_user_job_path(current_user.id)" is the culprit

do something like

render "edit"
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top