Как мне сделать Зависимости gemspec автоматически загружаются в приложение Rails 3 с использованием Gemfile

У меня есть приложение Rails 3, которое я превращаю в движок / гем Rails. У этого движка есть некоторые зависимости гема, которые я поместил в его .gemspec файл.

Я создал новое «родительское» приложение Rails 3, и я хотел бы добавить свой гем движка в Gemfile и автоматически получить зависимости гема » загружен ', но у меня это не работает! bundle install отлично устанавливает зависимости гемов, но когда я запускаю сервер, приложение вылетает, потому что они не загружены.

Например, gemspec моего движка содержит следующие строки:

s.add_runtime_dependency(%q<rails>, ["= 3.0.7"])
s.add_runtime_dependency(%q<acts_as_commentable>, [">= 3.0.1"])
s.add_runtime_dependency(%q<haml>, [">= 3.1.1"])

.. и Родительское приложение Rails 3 имеет эти строки в своем Gemfile:

source 'http://rubygems.org'

gem 'my_engine', :path => "~/src/gems/my_engine"

Но я получаю следующую ошибку:

undefined local variable or method `acts_as_commentable'
from /home/user/src/gems/my_engine/app/models/account.rb:66:in `<class:Account>'

Но если я добавлю gem 'plays_as_commentable', '> = 3.0.1' в Gemfile родительского приложения Rails 3, затем загружается гем и ошибка исчезает.

Я использую Rails 3.0.8.

Есть ли у кого-нибудь предложения? Нужно ли мне что-то менять в способе загрузки моего движка?

11
задан tshepang 18 October 2013 в 14:24
поделиться