Я конвертирую свое приложение Rails 2 в Rails 3. До сих пор я был успешным.Тем не менее, есть эта странная проблема, которая мне явно требуется любые внешние файлы.Вот моя оригинальная (то есть Rails 2) модель ActiveRecord:
class Book < ActiveRecord::Base
belongs_to :author
has_many :translations, :dependent => :destroy
include Freebase
...
end
, чтобы она работала в Rails 3, мне требуется модель Translation и Freebase.rb file, таким образом:
class Book < ActiveRecord::Base
require File.expand_path(File.dirname(__FILE__) + '/translation.rb')
belongs_to :author
has_many :translations, :dependent => :destroy
require File.expand_path(File.dirname(__FILE__) + '../../../lib/freebase.rb')
include Freebase
...
end
Это нормальный способ в Rails 3, или я делаю что-то не так.Другими словами, почему необходимо явно включать эти файлы?Возможно, есть какая-то причина для файла Freebase.rb , который находится в папке lib , но как насчет модели Translation , которая находится в той же самойdir?
Спасибо, ребята!