小编joa*_*aga的帖子

Rake db:test:prepare不会创建`table view`

我的项目中有两个表具有几乎相同的结构,其中一个用于计算用户统计信息,另一个表从未用于此.现在我需要使用它们来计算统计数据.

我使用MySQL Views做到了这一点,除了我的测试,一切都很顺利.似乎数据库清理程序策略不会将数据保存在数据库中,并且我的视图从未被填充.

我从移动的策略:transaction:truncation和数据开始被持久化.但我仍然有问题,我继续无法从视图中读取数据.

# spec/spec_helper.rb
config.before(:each, using_view: true) do
  DatabaseCleaner.strategy = :truncation
end

# spec/models/stats/answer.rb
describe 'POC test', using_view: true do
  it 'works fine without the table view' do
    expect{ create(:answer) }.to change{ Answer.count }
    expect{ create(:knowledge_answer) }.to change{ Knowledge::Answer.count }
  end

  it 'works fine with the table view' do
    expect{ create(:answer) }.to change{ Stats::Answers.count }
    expect{ create(:knowledge_answer) }.to change{ Stats::Answers.count }
  end
end
Run Code Online (Sandbox Code Playgroud)

当我执行它时:

Stats::Answers
  POC test
    works fine with the table view (FAILED …
Run Code Online (Sandbox Code Playgroud)

mysql rake ruby-on-rails

14
推荐指数
1
解决办法
710
查看次数

标签 统计

mysql ×1

rake ×1

ruby-on-rails ×1