Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
有没有办法将某些 AR 模型的 ID 设置为从特定值开始?(说1000)?我只需要这个用于我的 rspec 测试,而不需要将在生产中运行的代码。
对于mysql,你可以这样做
ALTER TABLE tablename AUTO_INCREMENT = 1000;
而对于 postgresql 你可以这样做
ALTER SEQUENCE tablename_id_seq RESTART 1000;
主键由您的数据库管理,无法直接在 AR 中更改。请参阅 benchwarmer 的回复以通过您的数据库进行操作。
对于 rspec 测试,您可以只存根Model#id等Model.find。
Model#id
Model.find