Rails 3: ฉันต้องการแสดงรายการเส้นทางทั้งหมดที่กำหนดไว้ในแอปพลิเคชันทางรถไฟของฉัน


144

ฉันต้องการฟังก์ชั่นพา ธ ตัวช่วยที่กำหนดไว้ทั้งหมด (ที่สร้างจากเส้นทาง) ในแอปพลิเคชั่น Rails 3 ของฉันหากเป็นไปได้

ขอบคุณ


เปิดคอนโซลและพิมพ์เส้นทางเสาะหาของคุณ
Mohsin Raza

คำตอบ:


229
rake routes

หรือ

bundle exec rake routes

2
นอกจากนี้ถ้าคุณต้องการที่จะตรวจสอบว่าเส้นทางที่กำหนดจะได้รับการยอมรับโดยเราเตอร์ของแอปให้ดูนี้
XåpplI'-I0llwlg'I -

ในบริบทเฉพาะฉันต้องใช้RAILS_ENV=dev /opt/rbenv/shims/bundle rake routesเพื่อทำงานนี้
peter_v

1
rake routesเลิกใช้แล้ว; ใช้rails routesแทน: github.com/rails/rails/pull/33660
nekketsuuu

72

ปรับปรุง

ผมมารู้ทีหลังพบว่ามีวิธีการอย่างเป็นทางการที่จะเห็นทุกเส้นทางโดยไปที่http: // localhost: 3000 / ราง / ข้อมูล / เส้นทาง เอกสารอย่างเป็นทางการ: https://guides.rubyonrails.org/routing.html#listing-existing-routes


แม้ว่ามันอาจจะช้า แต่ฉันชอบหน้าข้อผิดพลาดที่แสดงเส้นทางทั้งหมด ฉันมักจะลองไปที่/routesเส้นทาง (หรือปลอม) จากเบราว์เซอร์โดยตรง เซิร์ฟเวอร์ Rails ให้หน้าข้อผิดพลาดในการเราต์โดยอัตโนมัติรวมถึงเส้นทางและเส้นทางทั้งหมดที่กำหนดไว้ นั่นเป็นประโยชน์มาก :)

ดังนั้นเพียงไปที่http: // localhost: 3000 / เส้นทาง ป้อนคำอธิบายรูปภาพที่นี่


1
เพื่อระบุชัดเจนสิ่งนี้ใช้ได้เฉพาะในสภาพแวดล้อมการพัฒนาเท่านั้น
Dennis

6
สิ่งนี้รวมอยู่ใน Rails 4 แต่คำถามถามเกี่ยวกับ Rails 3 คุณจะต้องติดตั้งอัญมณี Sextant เพื่อใช้สิ่งนี้ใน 3
elc


7

การลองhttp://0.0.0.0:3000/routesใช้แอพ Rails 5 API (เช่น: เน้น JSON เท่านั้น) จะกลับมา (เหมือน Rails เบต้า 3)

{"status":404,"error":"Not Found","exception":"#> 
<ActionController::RoutingError:...

อย่างไรก็ตาม http://0.0.0.0:3000/rails/info/routesจะแสดงหน้า HTML ที่เรียบง่ายและสวยงามพร้อมเส้นทาง


7
rake routes | grep <specific resource name>

แสดงเส้นทางเฉพาะของทรัพยากรหากเป็นรายการเส้นทางที่ค่อนข้างยาว

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