복붙노트

[RUBY-ON-RAILS] 루트 디렉토리 경로를 레일?

RUBY-ON-RAILS

루트 디렉토리 경로를 레일?

어떻게 레일 응용 프로그램의 루트 디렉토리 경로를받을 수 있나요?

해결법

  1. ==============================

    1.레일 3 및 최신에서 :

    레일 3 및 최신에서 :

    Rails.root
    

    이는 경로 이름 개체를 반환합니다. 당신이 문자열을 원하는 경우에 당신은 .to_s을 추가해야합니다. 당신이 당신의 레일 응용 프로그램에서 다른 경로를 원한다면, 당신은 다음과 같은 조인을 사용 할 수 있습니다 :

    Rails.root.join('app', 'assets', 'images', 'logo.png')
    

    레일 2에서는 문자열입니다 RAILS_ROOT 상수를 사용할 수 있습니다.

  2. ==============================

    2.슈퍼 정확성을 위해, 당신은 사용해야합니다 :

    슈퍼 정확성을 위해, 당신은 사용해야합니다 :

    Rails.root.join('foo','bar')
    

    / 디렉토리 분리,해야 사람을 시도하지 않고 하나에서 실행 어디에 플랫폼에서 작동하는 앱을 수있다.

  3. ==============================

    3.당신은 액세스 변수 RAILS_ROOT를 사용하여 응용 프로그램의 경로를 레일 할 수 있습니다.

    당신은 액세스 변수 RAILS_ROOT를 사용하여 응용 프로그램의 경로를 레일 할 수 있습니다.

    예를 들면 :

    render :file => "#{RAILS_ROOT}/public/layouts/mylayout.html.erb"
    
  4. ==============================

    4.다른 모든 정답뿐만 아니라, 이후 Rails.root는 경로 이름의 객체이며,이 작동하지 않습니다 :

    다른 모든 정답뿐만 아니라, 이후 Rails.root는 경로 이름의 객체이며,이 작동하지 않습니다 :

    Rails.root + '/app/assets/...'
    

    가입처럼 당신은 무언가를 사용할 수 있습니다

    Rails.root.join('app', 'assets')
    

    당신이 원하는 경우 문자열은 다음을 사용 :

    Rails.root.join('app', 'assets').to_s
    
  5. ==============================

    5.경우에 따라 레일로드 할 필요없이 레일에게 뿌리를 할 수 있습니다.

    경우에 따라 레일로드 할 필요없이 레일에게 뿌리를 할 수 있습니다.

    하지 TDD'ing 모델 대신 rails_helper의 spec_helper을 요구하여 레일에 따라 예를 들어, 당신은 빠른 피드백주기를 얻는다.

    # spec/spec_helper.rb
    
    require 'pathname'
    
    rails_root = Pathname.new('..').expand_path(File.dirname(__FILE__))
    
    [
      rails_root.join('app', 'models'),
      # Add your decorators, services, etc.
    ].each do |path|
      $LOAD_PATH.unshift path.to_s
    end
    

    어떤 쉽게 일반 올드 루비가 자신의 스펙 파일에서 개체로드 할 수 있습니다.

    # spec/models/poro_spec.rb
    
    require 'spec_helper'
    
    require 'poro'
    
    RSpec.describe ...
    
  6. ==============================

    6.당신이 사용할 수있는:

    당신이 사용할 수있는:

    Rails.root
    

    그러나 자산을 가입하는 당신은 사용할 수 있습니다 :

    Rails.root.join(*%w( app assets))
    

    희망이 당신을 도와줍니다.

  7. ==============================

    7.당신이 APPEND 뭔가를 원하는 경우 간단히 Rails.root 또는 우리는 Rails.root.join처럼 ( '응용 프로그램', '자산')를 사용할 수 있습니다. 그리고 to_s를

    당신이 APPEND 뭔가를 원하는 경우 간단히 Rails.root 또는 우리는 Rails.root.join처럼 ( '응용 프로그램', '자산')를 사용할 수 있습니다. 그리고 to_s를

  8. ==============================

    8.간단히 Rails.root를 작성하여 에 의해 아무것도 추가 Rails.root.join (* (응용 프로그램 자산) w %). 그리고 to_s

    간단히 Rails.root를 작성하여 에 의해 아무것도 추가 Rails.root.join (* (응용 프로그램 자산) w %). 그리고 to_s

  9. from https://stackoverflow.com/questions/3724487/rails-root-directory-path by cc-by-sa and MIT license