【问题标题】:Rails fixtures - defining a table name?Rails 夹具 - 定义表名?
【发布时间】:2009-12-21 11:27:22
【问题描述】:

目前,我所有的装置都与它们所使用的表同名,因为最近出现了 rails 问题,似乎不可能有一个以单词“test”开头的装置

有谁知道一种方法可以使用不同的灯具名称,然后将其映射到正确的表格?

谢谢, 安迪

【问题讨论】:

    标签: ruby-on-rails unit-testing fixtures testunit


    【解决方案1】:

    您可以像这样手动设置给定灯具的类:

    class SomeTest < ActiveSupport::TestCase
    
      set_fixture_class widgets: 'Module::ClassInAModule'
      fixtures :widgets # or fixtures :all if you’ve defined all the mappings required
    
      test 'widgets can be found' do
        assert Module::ClassInAModule.all.any?, 'there should be widgets'
      end
    
    end
    

    根据您的测试/测试助手的设置方式,您可能希望将此调用移至父类或其他东西。

    【讨论】:

      【解决方案2】:

      在你的模型中设置这个关键字:

      class Anywhere < ApplicationRecord
          self.table_name = "singular_table"
      end
      

      OBS:(导轨 >= 5)

      【讨论】:

      • 它只是照顾一切。
      【解决方案3】:

      This blog post 看起来与您想要做的类似。

      【讨论】:

      • 此博文链接已失效
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-22
      • 2014-02-17
      • 1970-01-01
      相关资源
      最近更新 更多