Гарб просто перестал работать в Rails 3 без прикосновения - PullRequest
0 голосов
/ 27 мая 2011

У меня есть модель Garb:

class Visits

  extend Garb::Model

  metrics :visits, :new_visits, :pageviews
  dimensions :month, :hostname, :network_domain, :country, :region, :source

end

И у меня есть эта строка в моем контроллере:

for visit in Visits.results(profile, :start_date => (Date.today-numdays), :filters => { :hostname.eql => "#{@brand.subdomain}.mysite.com" })

Это сработало невероятно.Но внезапно, хотя ни один из фактических кодов не был изменен:

NoMethodError in AnalyticsController#index
undefined method `eql' for :hostname:Symbol

Что может быть причиной этого?

Ответы [ 3 ]

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

По какой-то причине garb / lib / support.rb больше не загружается.Вы положили :require => false на линию самоцветов в Gemfile?

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

Вы установили гем right_http_connection-1.3.0?Это приведет к тому, что garb / lib / support.rb не будет загружен, если перед 'garb' требуется 'right_http_connection'.Если это можно исправить, установив более низкое right_http_connection, такое как right_http_connection-1.2.4.

В конце концов, вы можете использовать команду

 find /Your/gems/installed/dir -name "*.rb" -print | xargs grep '\<support\>' | grep  'require'

, чтобы найти, какие файлы вызывают ваш файл / lib/support.rb больше не был загружен.Эта ссылка http://kayakjang.github.com/2011/05/27/garb.html может быть полезна для решения этой проблемы.

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

Я исправил это, вырезав и вставив содержимое файла garb / lib / support.rb в файл environment.rb. Не знаю, я знаю. Но я не знаю, какое обновление gem модифицировало Symbol, и это работает. Реквизит Роману, который указал мне правильное направление.

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