J'ai créé un échafaudage sans problèmeserreur de routage après échafaudage et migration
$ rails generate scaffold New name:string title:string content:text
commande Rake pour exécuter la migration (aucun problème comme avant, table créé correctement)
$ rake db:migrate
Modifier app/views/Accueil/index.html.erb
<%= link_to 'My News', :controller => 'news' %>
Je vois la maison et le lien correctement "http: // localhost: 3000"; en cliquant sur le lien "Mes nouvelles", la page "http: // localhost: 3000/news" est chargée sans erreur.
maintenant, en cliquant sur le lien "New New" généré par Rails, cible de lien localhost: 3000/nouvelles/nouvelle (source "< a href ="/nouvelles/nouveaux "> New New </a >"), je lis cette erreur:
Routing Error
No route matches {:action=>"show", :controller=>"news", :format=>nil}
Try running rake routes for more information on available routes.
Dans "app/views/nouvelles/index.html.erb" le lien souce est
<%= link_to 'New New', new_news_path %>
En routes.rb je lis
MyApp::Application.routes.draw do
resources :news
get "home/index"
- Rails 3.2.3
- Ruby 1.9.3p125
- MySQL 5.5
- Windows 7 64 bits
routes Rakes:
news_index GET /news(.:format) news#index
POST /news(.:format) news#create
new_news GET /news/new(.:format) news#new
edit_news GET /news/:id/edit(.:format) news#edit
news GET /news/:id(.:format) news#show
PUT /news/:id(.:format) news#update
DELETE /news/:id(.:format) news#destroy
home_index GET /home/index(.:format) home#index
root / home#index
Merci à l'avance et désolé pour mon anglais
Quelle est la cible du lien généré? Pourriez-vous copier cette ligne à partir de la source générée? – Matzi
Oui, la cible du lien est http: // localhost: 3000/news/new – Noeland