Требовать двух классов с одинаковыми именами в ruby - PullRequest
1 голос
/ 17 мая 2011

В моем приложении rails я подключаюсь к другому приложению ruby ​​foo с классом Database в своей папке /classes/database.rb и к другой панели приложения с другим классом Databse в своей папке /classes/database.rb

В этом приложении я должен поместить требуемые в контроллер приложения. Это делается с помощью следующего кода

$: << "C:\foo\
require "plug_in_foo.rb"

в plug_in_foo.rb есть требования проекта foo, т.е.

require "/classes/database.rb"

как в проекте foo, так и в проекте bar

$: << "C:\bar\
require "plug_in_bar.rb"

и в plug_in_bar.rb есть требования проекта bar, т.е.

require "/classes/database.rb"

Класс Database в проекте bar имеет собственный модуль, но когда я пытаюсь получить доступ к классу с помощью BaRModule :: Datbase.new, он распознается как унифицированная константа, поэтому я думаю, что require не работает.

Может ли кто-нибудь помочь мне с этим? Есть ли обходной путь для этого?

Ответы [ 2 ]

1 голос
/ 17 мая 2011

Можно указать абсолютные пути к различным файлам базы данных.

(Вы также можете проверить, действительно ли вам нужно добавить все это в путь загрузки)

0 голосов
/ 17 мая 2011

вы должны включить оба ваших модуля в ваш класс, как include BaRModule

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...