gpt4 book ai didi

ruby-on-rails - 将 Rails 模型转换为 SQL 插入查询?

转载 作者:数据小太阳 更新时间:2023-10-29 06:58:30 26 4
gpt4 key购买 nike

有没有办法将 Rails 模型转换为插入查询?

例如,如果我有一个像这样的模型:

m = Model.new
m.url = "url"
m.header = "header"

如果我执行 m.save,我如何获得 ActiveRecord 生成的相应 SQL 查询?

我想得到:“INSERT INTO models(url, header) VALUES('url', 'header')” 如果可能的话。

注意:我不想实际保存模型并取回查询(从日志文件等)。如果我选择保存查询,我想获取查询。

最佳答案

在 Rails 4.1 上,我发现下面的代码片段有效:

record = Post.new(:title => 'Yay', :body => 'This is some insert SQL')

record.class.arel_table.create_insert
.tap { |im| im.insert(record.send(
:arel_attributes_with_values_for_create,
record.attribute_names)) }
.to_sql

感谢https://coderwall.com/p/obrxhq/how-to-generate-activerecord-insert-sql

关于ruby-on-rails - 将 Rails 模型转换为 SQL 插入查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16159599/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com