Estoy intentando generar un formulario utilizando form_for helper en RoR pero me encuentro con lo que parece ser un error de enrutamiento. Aquí están los archivos pertinentes:método indefinido "_index_path" form_for problem
modelos/equipment.rb
class Equipment < ActiveRecord::Base
attr_accessible :name, :tracking_number
validates :tracking_number, :presence => true,
:uniqueness => { :case_sensitive => true }
end
controladores/equipments_controllers.rb
class EquipmentsController < ApplicationController
def index
@equipments = Equipment.paginate(:page => params[:page])
end
def new
@equipment = Equipment.new
end
end
vistas/equipos/new.html.rb
<h1>Add an equipment</h1>
<%= form_for (@equipment) do |f| %>
<%= render 'shared/error_messages', :object => f.object %>
<div class="field">
<%= f.label :name %> <br />
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :tracking_number %><br />
<%= f.text_field :tracking_number %>
</div>
<%= f.submit "Add" %>
<% end %>
routes.rb
EquipmentTracking::Application.routes.draw do
root :to => "equipments#index"
resources :equipments
end
No veo nada malo pero la salida el siguiente:
NoMethodError in Equipments#new
Showing /opt/ror/equipment_tracking/app/views/equipments/new.html.erb where line #2 raised:
undefined method `equipment_index_path' for #<#<Class:0xb6725a2c>:0xb6724640>
Si lo cambié a
<%= form_for (:equipment) do |f| %>
parece que funciona De acuerdo. También estoy seguro de que el @equipment variable estática es cada vez transcurrido desde
<%= @equipment %>
vuelve
#<Equipment:0xb685ece0>
Estoy en una pérdida aquí. Acabo de hacer lo que hice mientras estaba siguiendo el libro railstutorial.org y pude terminar el libro.
¿Hay más contenido en esos archivos? equipment_index_path es bastante peculiar y no debe ser una ruta de enrutamiento generada por Rails. – bensie