【问题标题】:Scaffolding user ID resetting脚手架用户ID重置
【发布时间】:2011-10-29 23:52:59
【问题描述】:

在我目前在 ruby​​ on rails 中创建的应用程序中。我正在尝试在 Rails 控制台中进行一些测试,我必须销毁数据库中的数据并且数据库连接到服务器。我正在导入一个 XML 并对其进行解析并将其放入带有脚手架的数据库中。

现在我需要的是:基本上我要做的是销毁数据并每周用一个新数据替换它..但我遇到的问题是,用户 ID 上升到 700+,而且只有50 条记录:S 导致它没有重置...

要删除我当前使用的所有记录,“whatever.destroy_all”就可以了

有什么帮助吗?

顺便说一句,我正在使用 SQLITE

【问题讨论】:

  • 大id有什么问题?
  • 因为我想在另一个脚手架之间互连,这会导致问题吗??

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1


【解决方案1】:

在表中创建的ID 列通常设置为唯一,并为每条新记录增加1,这就是每次销毁和添加的原因ID 的新数据越来越高。

ID # 越来越大这一事实根本不是问题

如果你真的想从零开始,我认为你可以删除表并重新创建它,但这对于一个微不足道的问题来说似乎有点过头了。

关于与另一个脚手架的连接,你是如何连接两者的,它们分别代表什么?

【讨论】:

    【解决方案2】:

    理想情况下,用于测试的数据填充应该通过固定装置(或简单的工具,如 factorygirl 等)来完成。

    拥有修复数据集的主要优点是您可以在任何环境中运行测试。但是根据您的要求,您可以这样做,

    当您通过活动记录填充日期时,也会传递 id 参数

    Ex: User.new(:id => 1, :name => "sameera").create
    

    通过这种方式,您可以拥有恒定的 id,但请确保相应地增加 id。

    【讨论】:

      猜你喜欢
      • 2014-12-08
      • 2012-09-26
      • 1970-01-01
      • 2021-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-11
      相关资源
      最近更新 更多