您知道演练:生产数据库中会弹出一些无效数据,您必须将其删除.您在生产服务器上启动Rails控制台并键入查询:
Foo.where(bar: 'baz').all
Run Code Online (Sandbox Code Playgroud)
您查看返回的数据,这是您需要删除的内容.然后键入:
Foo.where(bar: 'baz').destroy_all
Run Code Online (Sandbox Code Playgroud)
你的心停了一秒钟.您只想在运行之前查看查询.
在Rails中有没有办法做到这一点?我正在寻找类似的方法
Foo.where(bar: 'baz').to_sql
Run Code Online (Sandbox Code Playgroud)
但是将返回DELETE查询的那个.
我们有一个使用 Grape 和 Active Model Serializers 0.8 构建的 API。现在我们想使用 0.10 中的所有缓存优点,因此正在迁移到新的向后不兼容版本。
目前有两个问题:
似乎不可能使用self.root=
内部序列化器重新定义根密钥。例如,我们已经有了SimpleUserSerializer
,我们想要根密钥user
而不是simple_user
。解决方案是在渲染序列化器时指定根,但随后我们需要在很多地方进行更改。有没有办法重新定义此序列化器的根键,无论它在何处/如何渲染?
embed :ids, include: true
选项不受支持,可能应该通过适配器来实现。是否有计划为遗留项目发布或维护 0.8 兼容适配器?
任何有关迁移的指导都会有所帮助,因为我找不到任何官方文档。