虚荣不适用于MySql

时间:2011-08-17 20:25:37

标签: mysql ruby-on-rails activerecord redis vanity

我尝试为我的rails 2.3.5应用程序安装Vanity gem,我想使用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 个答案:

答案 0 :(得分:1)

我还没有弄清楚原因,但我通过更明确地使用active_record_adapter.rb文件中的has_many关联的类名来实现它:

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

编辑:这似乎打破了第一次启动虚荣的迁移过程(我正在努力修复!),但可能会帮助您找到解决方案。