Scope agak rumit, tetapi menyediakan lebih banyak opsi untuk menyesuaikan dengan tepat apa yang ingin Anda lakukan.
lingkup mendukung tiga opsi: modul, jalur dan sebagai . Jika Anda melihat cakupan dengan semua opsi itu, itu akan persis sama dengan namespace.
Dengan kata lain, rute dihasilkan oleh
namespace :admin do
resources :posts
end
sama seperti
scope module: 'admin', path: 'admin', as: 'admin' do
resources :posts
end
Dengan kata lain, kita dapat mengatakan bahwa tidak ada opsi default untuk cakupan dibandingkan dengan namespace. namespace menambahkan semua opsi ini secara default. Dengan demikian, dengan menggunakan scope, kami dapat lebih menyempurnakan rute sesuai kebutuhan.
Jika Anda melihat lebih dalam cakupan dan perilaku default namespace , Anda akan menemukan bahwa cakupan secara default hanya mendukung : opsi jalur, sedangkan namespace mendukung modul tiga opsi , jalur, dan sebagai default.
Untuk info lebih lanjut, lihat doc namespace-and-routing .