2015-11-23 5 views
5

私はレール初心者です(私の最初のアプリケーションを構築しています)、今はroutes.rbがかなり混乱しています。私は何が起こっているのかを見て、愚かなルーティングエラーを避けるのは簡単ですので、すべてのコンテンツを整理/フォーマットするための最良の方法は何か不思議だった。Rails:ルートの書式設定と編成方法

一般的なヒントや簡単な例があれば分かります。

routes.rbを

Rails.application.routes.draw do 
resources :posts 

get 'users/index' 

#devise_for :admins 

namespace :super_admin do #superadmin stuff 
resources :dashboard, only: [:index] 
end 

devise_for :super_admins, path: "super_admin", controllers: { registrations: "registrations", sessions: "super_admin/sessions" } #lets super admin sign in 



get 'welcome/index' 
root to: "welcome#index" 

match '/teachers', to: 'teachers#index', via: 'get' 

#route to delete users 
match 'users/:id' => 'users#destroy', :via => :delete, :as => :admin_destroy_user 
match '/users/:id',  to: 'users#show',  via: 'get' 



#routes for registration 
devise_for :users, controllers: { registrations: "registrations" } 
devise_for :teachers, controllers: { registrations: "teacher/registrations" } 





get 'users/:id/posts' => 'users#posts', :as => :user_posts 
match '/users', to: 'users#index', via: 'get' 

match '/about', to: 'about#index', via: 'get' 


match '/teachers/:id',  to: 'teachers#show',  via: 'get' 
match '/teachers/list', to: 'teachers#list', via: 'get' 

get 'super_admin/dashboard/new_user', :as => :super_admin_new_user 

resources :users, :only =>[:show] 
+0

ウェルカムインデックスルートを2回繰り返すことを除いて、それは私にはかなりよく見えます。ルートルートにしたい場合は 'root" welcome#index "'を使い、それより上のgetリクエストを削除してください。 – Cyzanfar

+0

私は十分な担当者がいる場合は、この質問StackOverflowチャットをお勧めすることをお勧めします。さらに、私は余分な間隔を取り除くことを提案するでしょう。私はコードのセクションの間に1つ以上の空白スペースを使用しません。 – onebree

答えて

4

は、残念ながら、それは単にこのファイルは時間をかけて、だらしレールの一部です。私たちのアプリは何年にもわたって追加された様々なアイテムのために何百ものエントリーを持っていますので、最初から考えることが良い経験から知っています。

あなたが整理ファイルを保つためにを行うことができますナンバーワンの事は、たとえば、あなたは彼らがあなたのアプリと一致する方法を理解するのに役立ちます一貫性のいくつかの種類で、コメントの多くを追加することです:

# ADMIN FUNCTIONALITY 
# -- Allows super admin access and functionality 
# your admin stuff here 

そして、同じセクションに特定の機能のためのあなたのルートを維持してください。あなたの例では、トップの近くに "教師"のルートがあり、さらにボトムの近くにはさらにいくつかのルートがあります。それらをグループ化してコメントしておくと、長期的に管理しやすくなります。

関連する問題