require跟require_relative都是Kernel的方法。
但是兩者用起來還是有區別的。
requrie filename
1)如果filename是一個相對路徑,則會在$LAOD_PATH($:)中去尋找
$LOAD_PATH.unshift(File.dirname(__FILE__)) unless $LOAD_PATH.include?(File.dirname(__FILE__))
#其中File.dirname(__FILE__)代表當前路徑,而$LOAD_PATH.unshift方法的目的就是將當前目錄作用ruby標准的加載路徑。
2)如果filename是一個絕對路徑,則尋找絕對路徑
require_relative filename
1)直接取相對路徑。此時與$LOAD_PATH($:)無關,是文件本身路徑的相對地址。
重要文章閱讀:Ruby入門--Linux/Windows下的安裝、代碼開發及Rails實戰 http://www.linuxidc.com/Linux/2014-04/100242.htm
Ruby on rails初體驗系列文章:
http://www.linuxidc.com/Linux/2014-04/100245.htm
http://www.linuxidc.com/Linux/2014-04/100246.htm
http://www.linuxidc.com/Linux/2014-04/100247.htm
Ubuntu下搭建Ruby On Rails http://www.linuxidc.com/Linux/2012-06/61981.htm
實測 Ubuntu 13.10 上搭建 Ruby on Rails http://www.linuxidc.com/Linux/2014-02/96399.htm
Ruby on Rails 4 Tutorial 中文版 高清完整PDF http://www.linuxidc.com/Linux/2014-04/100253.htm
Ruby 的詳細介紹:請點這裡
Ruby 的下載地址:請點這裡