Тщеславие не работает с MySql - PullRequest
0 голосов
/ 18 августа 2011

Я попытался установить Vanity gem для моего приложения rails 2.3.5, и я хочу использовать MySQL для тщеславия.Все отлично работает, когда я настраиваю его с помощью redis, но когда я изменяю файл конфигурации на использование mysql:

development:
  adapter: active_record
  active_record_adapter: mysql
  host: localhost
  database: vanity
  username: root
  password:

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

Showing
/Users/dries/.rvm/gems/ruby-1.8.7-p302/gems/vanity-1.5.3/lib/vanity/templates/_ab_test.erb where line #1 raised:

Vanity::Adapters::ActiveRecordAdapter is not missing constant
VanityConversion! Extracted source (around line #1):

1: <% score = experiment.score %> 
2: <table> 
3:   <caption> 
4:     <%= experiment.conclusion(score).join(" ") %></caption> 

Trace of template
inclusion:
/Users/dries/.rvm/gems/ruby-1.8.7-p302/gems/vanity-1.5.3/lib/vanity/templates/_experiment.erb,
/Users/dries/.rvm/gems/ruby-1.8.7-p302/gems/vanity-1.5.3/lib/vanity/templates/_experiments.erb,
/Users/dries/.rvm/gems/ruby-1.8.7-p302/gems/vanity-1.5.3/lib/vanity/templates/_report.erb

Я добавил в файл средыdevelopment.rb:

Vanity.playground.establish_connection :development
Vanity.playground.collecting = true

Так что он должен что-то делать с адаптером, включенным в драгоценный камень тщеславия, потому что Redis работает отлично.Кто-нибудь, кто знает решение?

1 Ответ

1 голос
/ 24 августа 2011

Я до сих пор не выяснил причину этого, но я заставил его работать, более четко указав имена классов для ассоциаций has_many в файле active_record_adapter.rb:

has_many :vanity_metric_values, :class_name => "Vanity::Adapters::ActiveRecordAdapter::VanityMetricValue"
has_many :vanity_conversions, :dependent => :destroy, :class_name => "Vanity::Adapters::ActiveRecordAdapter::VanityConversion"

Редактировать: Это, кажется, нарушает процесс миграции при первой загрузке тщеславия (что я работаю над исправлением!), Но может помочь вам на пути к решению.

...