2011-03-24 1 views
11

레일에로드합니다. 유용한 명령이 rails console인데 필요한 모든 데이터를 다운로드 한 다음 irb의 레일스 프로젝트와 상호 작용할 수 있습니다. Ruby 프로젝트 (Ruby 언어 기반)와 동일한 기술이 있습니까? 이 트릭을 통해 라이브러리, 모듈, 클래스, 파일 등을로드하는 것과 관련없이 irb에있는 Ruby 프로젝트와 함께 놀 수 있습니다. 감사자동으로 프로젝트 환경을 irb

내 프로젝트 중 하나에서

답변

14

프로젝트에는 환경을로드하는 파일이 하나 있어야합니다. 프로젝트를 가정하면 간단히 lib 디렉토리/project.rb에 있습니다

내 경우
$ irb -Ilib -rproject 
1

:

# Creates an IRB console useful for debugging experiments 
# Loads up the environment for the condition passed 
def console 
    File.open("./tmp/irb-setup.rb", 'w') do |f| 
    f.puts "# Initializes the environment for IRb." 
    f.puts "Code to initialize your project here" 
    f.puts "$: << '#{File.expand_path(".")}/'" #handle load path  
    end 
    irb = RUBY_PLATFORM =~ /(:?mswin|mingw)/ ? 'irb.bat' : 'irb' 
    # require your code 
    libs = " -r irb/completion" 
    libs << " -r #{File.dirname(__FILE__) + "/base"}" 
    libs << " -r ./tmp/irb-setup.rb" # require the config file you just wrote 
    puts "Loading #{@options.env} environment..." 
    exec "#{irb} #{libs} --simple-prompt" 
end 

트릭은 당신이 필요로하는 모든 코드를 autorequire 할 수있는 IRB 명령을 구성한다는 것입니다. 또한 필자가 IRb에서 요구하는 파일을 작성하는 magick을 추가 할 수 있도록 몇 가지 구성을 설정해야했습니다.

+0

이 기능을 프로젝트에 배치하고 호출하는 방법을 설명하십시오. – megas

+0

그 종류는 프로젝트 구성 방법에 달려 있습니다. 나는 발전기, 서버, 코드 실행 등을하는 명령 행 유틸리티를 포함하는 파일을 가지고있다. 그러나'console.rb' 파일을 넣고 끝에'console'을 추가하면, 'ruby console.rb'로 실행시켜야한다. 필요에 따라 스위트를 사용자 정의해야 할 것입니다. –

0

내 초기화 스크립트는 현재 작업 디렉토리에 있었다. 아래는 나를 위해 일했습니다.

irb -r ./setup.rb