[RUBY-ON-RAILS] 만들기는 외부 URL에 경로를 레일
RUBY-ON-RAILS만들기는 외부 URL에 경로를 레일
(응용 프로그램 URL 레일) // / 블로그를하지만, 사실은 블로그가없는 : 내 사용자의 많은 HTTP에 계속. 드디어 설치 포스 테러 블로그를 지금 내 사용자가 직접 싶다. 이 사용 routes.rb를 구성하는 방법이 있나요? httpd.conf 파일을 편집 할 포함되지 않습니다 더 좋은 방법이 있나요?
해결법
-
==============================
1.사용중인 레일 버전에 따라 다릅니다.
사용중인 레일 버전에 따라 다릅니다.
3 레일
# in routes.rb match "/blog" => redirect("http://example.com/blog"), :as => :blog
2 레일
# in routes.rb map.blog '/blog', :controller => "a_helper_controller", :action => "redirect_to_blog" # in a_helper_controller.rb def redirect_to_blog redirect_to "http://example.com/blog" end
-
==============================
2.나는이 때문에 경우에 다른 사람이 레일 (4)이 필요, 오래 알고 :
나는이 때문에 경우에 다른 사람이 레일 (4)이 필요, 오래 알고 :
get "/blog" => redirect("http://example.com/blog")
사용 그렇지 않으면 런타임 오류가 발생합니다, 레일 4 대신 경기 수
-
==============================
3.레일 5 :
레일 5 :
get '/stories', to: redirect('/articles') get '/stories', to: redirect('http://google.com')
가이드 소스 페이지 레일
-
==============================
4.일반 레일 컨트롤러 경로로 에뮬레이션 프론트 엔드 노선
일반 레일 컨트롤러 경로로 에뮬레이션 프론트 엔드 노선
배경 : 시작 부분에 레일 기둥 렌더링 HTML보기가 있었다. 그리고 프론트 엔드는 프론트 엔드 응용 프로그램을 가리키는 앱과 (주로 이메일에)는 JSON API에 백엔드를 변환하고, URL을 생성 할 필요가 반응했다 거의 정확하게 레일 컨트롤러처럼 동작합니다.
나는 내 앱 RSpec에, 오이 / 카피 바라, 다른 모든 것들과 쉽게 사용할 수있는 적절한 path_helpers을, URL을 구성 할 수 있지만, 프론트 엔드의 URL 대신 가리 키도록하고 생성 자원의 방법을 레일 해내는 할 수있는 방법을 찾고 있었다. 또한 (카피 바라 테스트에 유용) 완전히 desambiguate 프론트 엔드 VS 백엔드 경로로 전달 될 추가 PARAM을 필요로 에뮬레이트 프론트 엔드 경로에 경로 주변이 해킹을 발견
frontend_scope = { as: :frontend, host: Rails.configuration.frontend_host, # like https://www.example.com port: Rails.configuration.frontend_port, # 443 constraints: (lambda { |request| request.params[:app] == :frontend }) } scope(frontend_scope) do root to: 'static_pages_controller#home' resources :articles, only: [:show, :index] end
그럼 내 루비 코드에서 내가 사용할 수 있습니다
frontend_article_url(@article, app: :frontend) frontend_articles_url(app: :frontend) ... (and everything that can be generated in a classic rails app)
불편은 *, 검색 엔진, 프론트 엔드 응용 프로그램 + Google 웹 로그 분석과 같은 다른 모든 웹 응용 프로그램에 등을 무시해야한다는 것을, 당신의 리디렉션에서 응용 프로그램의 매개 변수가있을 것입니다.
당신이 당신의 프론트 엔드에 모두 / 기사 및 백엔드에 / 기사가있는 경우 * 문제의 존재는, 앱은 두 경로와 차이를 만들 수 없습니다 그 여분의 PARAM의 도움없이 동일한 URL에 해결
from https://stackoverflow.com/questions/3622706/creating-a-rails-route-to-an-external-url by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] 사용자의 시간대의 시간을 표시하는 방법 (0) | 2020.02.20 |
---|---|
[RUBY-ON-RAILS] 부트 스트랩 날짜 선택기를 사용하는 동안 어떻게 선택한 날짜 값을 얻으려면? (0) | 2020.02.19 |
[RUBY-ON-RAILS] 브라우저 감지 방법 레일 (0) | 2020.02.19 |
[RUBY-ON-RAILS] 어떻게 레일에서 시험하기위한 기본 "www.example.com"도메인을 변경하려면 어떻게해야합니까? (0) | 2020.02.19 |
[RUBY-ON-RAILS] has_many와 counter_cache : 통해 (0) | 2020.02.19 |