Domanda

Ho un errore di routing che ho semplicemente non riesco a capire! Il suo fare la mia testa, se qualcuno può suggerire una soluzione che sarebbe enormemente apprezzato.

ottengo l'errore: PERCORSO ERRORE Nessuna corrispondenza del percorso {: action => "create_from_template", regolatore: => "progetti"}

dalla seguente pulsante:

<p><%= link_to "Create from template", create_from_template_project_path %></p>

In routes.rb ho:

  resources :projects do
    member do
      get 'create_from_template'
    end
  end

In classe ProjectsController ho:

  def create_from_template
    #@project = Project.find(params[:template_id])
    #@project.clone
    redirect_to projects_path
  end

Si mostra anche quando faccio "rake routes"

create_from_template_project GET    /projects/:id/create_from_template(.:format) {:action=>"create_from_template", :controller=>"projects"}

Qualcuno ha qualche idea del perché isnt di lavoro?

EDIT: In realtà forse ho frainteso il "membro" risorsa nidificato regole di routing. Non ero di passaggio in un progetto. Ho cambiato il pulsante da

a

   <p><%= link_to "Create from template", create_from_template_project_path(template_project) %></p>

ed ora funziona. Grazie a tutti che hanno contribuito.

È stato utile?

Soluzione

Se non avete bisogno di passare del progetto per la creazione di azioni modello, pulsante di cambiamento come: `

 <%= link_to "Create from template", create_from_template_projects_path %> 
In percorsi, invece di
 member do 
si dovrebbe usare
 collection do 

Se si utilizza member do in routes.rb allora si dovrebbe passare progetto nel link_to come ha menzionato Prasvin

Altri suggerimenti

provare l'invio del progetto nel percorso a fianco link_to

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top