所以我一直在撞牆,試圖找出爲什麼這不起作用。我不斷收到爲什麼這個rails表格找不到正確的路徑?
ActionView::Template::Error:
undefined method `admin_information_index_path' for #<#<Class:0x007fc67971cab8>:0x007fc67d775740>
隨着跟蹤:
# ./app/views/admin/informations/_form.html.erb:1:in `_app_views_admin_informations__form_html_erb__2815737811953353352_70245242566200'
# ./app/views/admin/informations/new.html.erb:2:in `_app_views_admin_informations_new_html_erb___3700624853666844924_70245242606040'
任何提示,在正確的方向?
我的路線:
namespace :admin do
resources :informations
end
我的控制器:
class Admin::InformationsController < Admin::AdminController
def new
@information = Information.new
end
end
的意見/管理/信息/ new.html.erb:
<h1>Add New Information Page</h1>
<%= render :partial => 'form', locals: { information: @information } %>
的意見/管理/信息/ _form.html.erb:
輸出的<%= form_for [:admin, information] do |f| %>
<%= error_messages_for information %>
<%= f.label :title %><br>
<%= f.text_field :title %><br><br>
<%= f.label :content %><br>
<%= f.text_area :content %><br><br>
<%= f.submit "Submit" %>
<% end %>
rake routes
admin_informations GET /admin/informations(.:format) admin/informations#index
POST /admin/informations(.:format) admin/informations#create
new_admin_information GET /admin/informations/new(.:format) admin/informations#new
edit_admin_information GET /admin/informations/:id/edit(.:format) admin/informations#edit
admin_information GET /admin/informations/:id(.:format) admin/informations#show
PUT /admin/informations/:id(.:format) admin/informations#update
DELETE /admin/informations/:id(.:format) admin/informations#destroy
admin_root /admin(.:format) admin/sessions#new
你有「admin_information_index_path」的路由嗎?這可能解釋爲什麼它認爲輔助方法是未定義的。 –
表單甚至不應該試圖訪問該方法。它應該訪問新的或編輯方法......奇怪的東西。 –
如果您在提交表單時遇到此錯誤,我會說有一些默認的控制器邏輯正在構建一條不存在的奇怪路由(特別是如果您沒有在控制器中定義創建,但我假設你剛剛離開了這篇文章)。如果您在嘗試渲染表單時遇到此問題,我也很難過。 –