Вы должны быть в состоянии использовать require 'front_page'
, если вы размещаете front_page.rb
где-нибудь на пути загрузки.Т.е. это должно работать:
require 'front_page'
class PagesController < ApplicationController
def index
@front_page = FrontPage.new
end
end
Чтобы проверить путь загрузки, попробуйте следующее:
$ rails console
ree-1.8.7-2011.03 :001 > puts $:
/Users/scottwb/src/my_app/lib
/Users/scottwb/src/my_app/vendor
/Users/scottwb/src/my_app/app/controllers
/Users/scottwb/src/my_app/app/helpers
/Users/scottwb/src/my_app/app/mailers
/Users/scottwb/src/my_app/app/models
/Users/scottwb/src/my_app/app/stylesheets
# ...truncated...
В этом примере вы видите, что первая строкакаталог проекта lib
, где вы сказали, что ваша front_page.rb
живет.
Еще одна вещь, которую вы можете сделать, это добавить ее в config/application.rb
:
config.autoload_paths += %W(#{config.root}/lib)
так что вам даже не нужен require
;вместо этого Rails автоматически загрузит его (и все остальное в вашем lib
каталоге, поэтому будьте осторожны).