>

사용자부터 시작하여 앱의 특정 부분에 대해 다른 프런트 엔드 및 백엔드보기를 사용하려고합니다.

uninitialized constant Office::DashboardController 오류가 발생합니다 내가 이해하는 것은 컨트롤러를 찾을 수 없다는 것을 의미합니까? 네임 스페이스/디렉토리를 설정하는 방법에 문제가 있다고 생각하지만 작동하지 않는 것 같습니다.

routes.rb

namespace :office do
   root to: "dashboard#index"
   resources :users
end

사무실 /dashboards_controller.rb

class Office::DashboardsController < ApplicationController
    layout "office"
end

office/users_controller.rb

class UsersController < Office::DashboardController
    def index
      @users = User.all
    end
    def show
      @user = User.find_by_username(params[:id])
    end
end

이 문제를 완전히 엉망으로했을 가능성이 있습니다. 완전히 틀린 경우 ... 그런 경우 의견을 부탁드립니다!

미리 감사합니다 :)

  • 답변 # 1

    와이즈 비즈   DashboardController 내부  모듈, 그러나 Office  모듈에 없습니다. 왜 그런 겁니까? 둘 다 같은 폴더에 있습니다.

    따라서

    UsersController
    
    

    또는

    class Office::UsersController < Office::DashboardController
    
    

    예상대로 작동합니다.

    팁 : module Office class UsersController < DashboardController 를 실행할 수 있습니다  Rails가 기대하는 폴더/클래스 이름을보십시오.

    rails routes

  • 이전 R의 Stata tab 명령과 동일
  • 다음 rails&devise - 사용자 계정 삭제 후 채팅 충돌