Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Ruby on Rails | rails console で直接ファイルを require する方法

More than 1 year has passed since last update.

/path/to/rails-application/some/file.rbrequire したい。

絶対パス指定

Rails.root から読む。

require "#{Rails.root}/some/file"

# => true

相対パス指定

相対パス指定だと、Railsアプリケーションのトップディレクトリを基準に読めた。

require_relative "some/file"

# => true

エラー例

require で相対パスから読もうとすると、 ./ を付けない時にエラーになるので注意。

require "some/file"

LoadError: cannot load such file -- some/file

( なんでだよ! と思ったが、この書き方だと多分、インストール済みの ruby gem などだけから読もうとする気がする)

補足

ちなみに実際に rails console を起動したディレクトリと、相対パス指定した時の基準ディレクトリは関係ない様子。

カレントパスの確認はたぶんこいつ。

Dir.pwd

# => "/path/to/rails-application"

環境

  • pry-rails (0.3.6)
  • rails (5.1.5)
  • ruby 2.4.2p198 (2017-09-14 revision 59899) [x86_64-darwin16]

参考

YumaInaura
Ruby on Rails 業務経験 約5年 / Perl PHP Python Golang Linux Apache MySQL BigQuery Jenkins ansible AWS など / いなうらゆうま / YumaInaura / 稲浦悠馬
http://twitter.com/yumainaura
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away