2012-03-03 2 views
0

Rails Admin이 Heroku와 잘 작동하는 데 문제가 있습니다.Rails Admin 및 Heroku와의 라우팅 오류

<% if current_admin %> 
    <%= link_to "Admin Dashboard", rails_admin.index_path %> 
<% end %> 

이 때 발생하는 것 같습니다 :이 오류 때문에 내 application.html.erb이 코드 발생 믿고

No route matches {:controller=>"rails_admin/main"} 

: 관리자가 로그인 할 때 나는 라우팅 오류가 발생하고, 여기에 오류가 link_to에서 rails_admin.index_path으로 전화합니다. 그러나 내가 myurl/admin에 가면 관리 대시 보드를 잘 볼 수 있습니다. 또한 개발과 생산 환경에서 모든 것이 잘 작동합니다.

rake routes

출력 :

   rails_admin  /admin       RailsAdmin::Engine 
      users_index GET /users/index(.:format)   users#index 
       users_show GET /users/show(.:format)   users#show 
           /user/:id(.:format)   users#show 
     new_user_session GET /users/sign_in(.:format)  devise/sessions#new 
      user_session POST /users/sign_in(.:format)  devise/sessions#create 
    destroy_user_session DELETE /users/sign_out(.:format)  devise/sessions#destroy 
      user_password POST /users/password(.:format)  devise/passwords#create 
     new_user_password GET /users/password/new(.:format) devise/passwords#new 
     edit_user_password GET /users/password/edit(.:format) devise/passwords#edit 
         PUT /users/password(.:format)  devise/passwords#update 
cancel_user_registration GET /users/cancel(.:format)  devise/registrations#cancel 
     user_registration POST /users(.:format)    devise/registrations#create 
    new_user_registration GET /users/sign_up(.:format)  devise/registrations#new 
    edit_user_registration GET /users/edit(.:format)   devise/registrations#edit 
         PUT /users(.:format)    devise/registrations#update 
         DELETE /users(.:format)    devise/registrations#destroy 
      welcome_index GET /welcome/index(.:format)  welcome#index 
        songs GET /songs(.:format)    songs#index 
         POST /songs(.:format)    songs#create 
       new_song GET /songs/new(.:format)   songs#new 
       edit_song GET /songs/:id/edit(.:format)  songs#edit 
        song GET /songs/:id(.:format)   songs#show 
         PUT /songs/:id(.:format)   songs#update 
         DELETE /songs/:id(.:format)   songs#destroy 
        root  /       welcome#index 

Routes for RailsAdmin::Engine: 
    dashboard GET  /         rails_admin/main#dashboard 
     index GET|POST /:model_name(.:format)     rails_admin/main#index 
      new GET|POST /:model_name/new(.:format)    rails_admin/main#new 
     export GET|POST /:model_name/export(.:format)   rails_admin/main#export 
    bulk_delete POST|DELETE /:model_name/bulk_delete(.:format)  rails_admin/main#bulk_delete 
history_index GET   /:model_name/history(.:format)   rails_admin/main#history_index 
    bulk_action POST  /:model_name/bulk_action(.:format)  rails_admin/main#bulk_action 
     show GET   /:model_name/:id(.:format)    rails_admin/main#show 
     edit GET|PUT  /:model_name/:id/edit(.:format)  rails_admin/main#edit 
     delete GET|DELETE /:model_name/:id/delete(.:format)  rails_admin/main#delete 
history_show GET   /:model_name/:id/history(.:format)  rails_admin/main#history_show 
    show_in_app GET   /:model_name/:id/show_in_app(.:format) rails_admin/main#show_in_app 
+0

'레이크 루트'의 결과는 무엇입니까? –

+0

다음은 출력물입니다. http://pastebin.com/raw.php?i=VRPcgXPJ – Dan

+0

pastebin을 사용할 필요가 없습니다. 단지 다른 링크를 클릭하는 것을 의미하며 여기에 코드를 추가하는 것보다 추가 기능을 제공하지 않습니다. 그리고 앞으로 링크가 죽을 수도 있습니다. –

답변

1
나를 위해이 솔루션은

rails_admin.index_path 

을 변경했다

rails_admin.dashboard_path 

는 다른 방식으로 작동하지 않는 이유를 알고하지 마십시오 생산에서 주위에 있지만 이것은 할 것입니다.

+0

rails_admin.index_path는 콜렉션 수준 경로이며 모델 이름을 설정해야하며 로컬에서 작동하는 이유를 알 수 없습니다. –

+0

@BenoitB. "콜렉션 레벨"루트의 의미를 설명해 주시겠습니까? 또는 그것을 설명하는 자료를 가르쳐주십시오. 또한 모델 이름을 설정해야한다는 것은 무엇을 의미합니까? 계속 진행중인 모든 것을 이해하려고 레일즈를 배웁니다. – Dan

+1

인덱스 경로에는 RailsAdmin의 모델이 필요합니다. 모델의 인덱스 페이지입니다. 색인은 RailsAdmin에서 수집 작업 (레코드 컬렉션에 적용)이라고합니다. 당신이 찾고 있었던 것은 대시 보드 경로 였으므로 dashboard_path였습니다. RailsAdmin 라우팅을 살펴보실 수 있습니다 : https://github.com/sferik/rails_admin/blob/master/config/routes.rb#L5 –