ข้อผิดพลาดเกี่ยวกับเส้นทางของ Ruby on Rails [ปิด]


-1

ฉันใช้ทับทิมบนรางบน Ubuntu Droplet และฉันพบข้อผิดพลาดต่อไปนี้เมื่อฉันไปยังชื่อโดเมนของฉัน:

Routing Error
uninitialized constant HomeController
Rails.root: /home/rails/example

Application Trace | Framework Trace | Full Trace
Routes
Routes match in priority from top to bottom

Helper      HTTP Verb   Path    Controller#Action
Path / Url     GET       /         home#index
root_path       

ฉันพยายามวิ่งแล้ว

rails g controller home index

แต่ฉันได้รับข้อผิดพลาดมากมาย นี่เป็นข้อผิดพลาดสองสามบรรทัดแรก:

/home/rails/example/config/routes.rb:6:in `block in <main>': undefined local 
variable or method `map' for # . 
<ActionDispatch::Routing::Mapper:0x00007f11683c6fd8> 
Did you mean? tap (NameError) 
from /root/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/actionpack- 
5.2.1/lib/action_dispatch/routing/route_set.rb:432:in `instance_exec' 
from /root/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/actionpack- 
5.2.1/lib/action_dispatch/routing/route_set.rb:432:in `eval_block'

นี่คือแผนผังไฟล์ที่เกี่ยวข้อง:

app
  -controllers
    -application_controller.rb
bin
config
  -routes.rb

เหล่านี้คือเนื้อหาของ application_controller.rb

class ApplicationController < ActionController::Base
end

เหล่านี้คือเนื้อหาของเส้นทาง

Rails.application.routes.draw do
root to: 'home#index'


 Place at the end of the routing!
map.root :controller => 'MyController', :action => :index

end

มีรหัส "HomeController" ในรหัสของคุณหรือไม่? /home/rails/example/...เช่นใน คุณสามารถให้รหัสที่เกี่ยวข้องได้หรือไม่?
rudib

คุณหมายถึงบันทึกข้อผิดพลาดหรือไม่?
Cody Rutscher

@rudib เราสามารถเปิดสิ่งนี้ในการแชทได้หรือไม่?
Cody Rutscher

คุณต้องมีคลาสที่HomeControllerกำหนดไว้ในรหัส อาจอยู่ภายใต้./controllers/home_controller.rbหรือคล้ายกัน
rudib

ไม่ไม่มี HomeController อยู่ที่นั่น
Cody Rutscher

คำตอบ:


0

ปัญหาคือเส้นทางชี้ไปที่ตัวควบคุมที่ไม่มีอยู่

Rails.application.routes.draw do
#root to: 'home#index'


# Place at the end of the routing!
#map.root :controller => 'MyController', :action => :index

end

การใส่ความคิดเห็นออกควรทำให้คำสั่งทำงานอีกครั้ง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.