0
我有一個HTML文件,如下所示,位於下views/admin/ve_files/new.html.erb
Rails路由 - 下一步它在哪裏?
<div class="page-header">
<h3>Hi</h3>
</div>
<%= simple_form_for @ve_file do |f| %>
<%= f.file_field :file %>
<br><br>
<%= f.submit "Upload" %>
<% end %>
<br>
後來才知道有controllers/admin/ve_files_controller.rb
它看起來像這樣
require 'CSV'
class Admin::VeFilesController < ApplicationController
layout 'admin'
def new
authorize! :create, :ve_file
@ve_file = VeFile.new
end
def create
puts "hello"
authorize! :create, :ve_file
#puts params
@ve_file = VeFile.new(params[:ve_file])
puts "okay"
if @ve_file.save
CSV.foreach(@ve_file.file.path) do |row|
puts row[0]
end
redirect_to admin_ve_path, :notice => 'Hi'
else
render :new
end
end
end
所以在位於控制器,當我點擊HTML上傳按鈕文件,該程序試圖將我路由到哪裏?代碼中指定的地方在哪裏?我收到以下錯誤並沒有輸出到終端:
Routing Error
uninitialized constant VeFilesController
,因爲它應該是Admin::VeFilesController
的感謝!解決了這個問題。但現在我得到這個錯誤: 在Admin :: VeFilesController中的NoMethodError#create 未定義的方法'file_will_change!'爲# –
CodeGuy
很高興你的路由工作!聽起來像另一個問題需要問。也就是說,在你自己嘗試瞭解一下發生了什麼之後。 :) –