0

我遇到了一个非常奇怪的错误,它说明了以下内容:

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"

这很奇怪,因为我的所有其他路线似乎都正常工作,除了以下几点:

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

我的路线设置如下:

 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

因此应该能够使用localhost:3000/users/1/jobs/new

在作业控制器中,我有:

 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

在我的工作新视图中,我正在使用以下表单方法:

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

如果有人知道这里可能出了什么问题,真的会非常感激,因为我已经挣扎了一段时间:(

谢谢!

4

1 回答 1

1

“render new_user_job_path(current_user.id)”是罪魁祸首

做类似的事情

render "edit"
于 2012-10-09T13:19:25.753 回答