Rails 네임스페이스의 카탈로그 구조에 의문이 생겨서 확인했어요
3546 단어 Rails
개시하다
RubbyonRails6 실천 지침을 배우는 과정에서 갑자기 명명 공간의 디렉터리 구조에 의문이 생겨 동작 확인을 시도했다.
결론
결론을 먼저 쓰다.
의문이 있거나 볼 필요가 없는 분들은 확인만 해주세요.app/任意のフォルダ名/namespaseで設定したフォルダ/対象ファイル
이렇게 app 폴더 바로 아래에 임의의 이름의 폴더를 만들고 routes.rb
의 이름 공간에서
이름을 설정한 폴더의 바로 아래에 있는 파일을 배치하면 처리를 호출할 수 있습니다.
예)routesrb
routes.rb constraints host: config[:admin][:host] do
namespace :admin, path: config[:admin][:path] do
root "top#index"
get "login" => "sessions#new", as: :login
resource :session, only: [ :create, :destroy ]
resources :staff_members
end
end
app/services/admin/authenticator.rb
의문사
Rails 가이드2.6 컨트롤러의 네임스페이스 및 라우팅에서
이렇게 기재되어 있다.
네임스페이스를 통해 컨트롤러를 그룹화할 수도 있습니다.가장 많이 사용되는 네임스페이스는 여러 관리 컨트롤러 클러스터가 모여 있는 Admin: 네임스페이스입니다.이 컨트롤러를 app/controllers/admin 디렉터리에 놓으면 루트를 통해 컨트롤러를 그룹으로 나눌 수 있습니다.
• app 폴더 바로 아래에 Sample 디렉터리 만들기
만약 이렇다면, controllers를 표시하지 않아도 app/폴더 이름/이름 공간에 설정된 폴더 이름 바로 아래에
서류 넣으면 되죠?
내 생각엔
시도
'app/samples/admin/hello.rb'를 생성합니다.
hello.rbclass Admin::Hello
def hello
puts "Hello World"
end
end
이 파일을 적절한 Rails 애플리케이션에 설치하고 실행한 결과
당초의 계획대로 불러낼 수 있다.
해봤어요.
'app/samples/samples/admin/hi.rb'를 생성합니다.
hi.rbclass Admin::Hi
def hi
puts "Hi World"
end
end
이 파일을 적절한 Rails 애플리케이션에 설치하고 실행한 결과
읽기에 실패했습니다.
이상의 결과에 따라 응용 폴더 바로 아래에 임의의 이름의 폴더를 만들고 routes.rb
의 명칭 공간에서
이름을 설정한 폴더의 바로 아래에 있는 파일을 놓으면 처리할 것을 알 수 있습니다.
참조 링크
Rails 가이드
Reference
이 문제에 관하여(Rails 네임스페이스의 카탈로그 구조에 의문이 생겨서 확인했어요), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yokku21/items/d85a0774352020c990c2
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
결론을 먼저 쓰다.
의문이 있거나 볼 필요가 없는 분들은 확인만 해주세요.
app/任意のフォルダ名/namespaseで設定したフォルダ/対象ファイル
이렇게 app 폴더 바로 아래에 임의의 이름의 폴더를 만들고 routes.rb
의 이름 공간에서이름을 설정한 폴더의 바로 아래에 있는 파일을 배치하면 처리를 호출할 수 있습니다.
예)routesrb
routes.rb
constraints host: config[:admin][:host] do
namespace :admin, path: config[:admin][:path] do
root "top#index"
get "login" => "sessions#new", as: :login
resource :session, only: [ :create, :destroy ]
resources :staff_members
end
end
app/services/admin/authenticator.rb
의문사
Rails 가이드2.6 컨트롤러의 네임스페이스 및 라우팅에서
이렇게 기재되어 있다.
네임스페이스를 통해 컨트롤러를 그룹화할 수도 있습니다.가장 많이 사용되는 네임스페이스는 여러 관리 컨트롤러 클러스터가 모여 있는 Admin: 네임스페이스입니다.이 컨트롤러를 app/controllers/admin 디렉터리에 놓으면 루트를 통해 컨트롤러를 그룹으로 나눌 수 있습니다.
• app 폴더 바로 아래에 Sample 디렉터리 만들기
만약 이렇다면, controllers를 표시하지 않아도 app/폴더 이름/이름 공간에 설정된 폴더 이름 바로 아래에
서류 넣으면 되죠?
내 생각엔
시도
'app/samples/admin/hello.rb'를 생성합니다.
hello.rbclass Admin::Hello
def hello
puts "Hello World"
end
end
이 파일을 적절한 Rails 애플리케이션에 설치하고 실행한 결과
당초의 계획대로 불러낼 수 있다.
해봤어요.
'app/samples/samples/admin/hi.rb'를 생성합니다.
hi.rbclass Admin::Hi
def hi
puts "Hi World"
end
end
이 파일을 적절한 Rails 애플리케이션에 설치하고 실행한 결과
읽기에 실패했습니다.
이상의 결과에 따라 응용 폴더 바로 아래에 임의의 이름의 폴더를 만들고 routes.rb
의 명칭 공간에서
이름을 설정한 폴더의 바로 아래에 있는 파일을 놓으면 처리할 것을 알 수 있습니다.
참조 링크
Rails 가이드
Reference
이 문제에 관하여(Rails 네임스페이스의 카탈로그 구조에 의문이 생겨서 확인했어요), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yokku21/items/d85a0774352020c990c2
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
'app/samples/admin/hello.rb'를 생성합니다.
hello.rb
class Admin::Hello
def hello
puts "Hello World"
end
end
이 파일을 적절한 Rails 애플리케이션에 설치하고 실행한 결과당초의 계획대로 불러낼 수 있다.
해봤어요.
'app/samples/samples/admin/hi.rb'를 생성합니다.
hi.rbclass Admin::Hi
def hi
puts "Hi World"
end
end
이 파일을 적절한 Rails 애플리케이션에 설치하고 실행한 결과
읽기에 실패했습니다.
이상의 결과에 따라 응용 폴더 바로 아래에 임의의 이름의 폴더를 만들고 routes.rb
의 명칭 공간에서
이름을 설정한 폴더의 바로 아래에 있는 파일을 놓으면 처리할 것을 알 수 있습니다.
참조 링크
Rails 가이드
Reference
이 문제에 관하여(Rails 네임스페이스의 카탈로그 구조에 의문이 생겨서 확인했어요), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yokku21/items/d85a0774352020c990c2
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
class Admin::Hi
def hi
puts "Hi World"
end
end
Rails 가이드
Reference
이 문제에 관하여(Rails 네임스페이스의 카탈로그 구조에 의문이 생겨서 확인했어요), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yokku21/items/d85a0774352020c990c2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)