如果我不想使用构造函数和编译器,如何为CRUD编写SQL查询?幽灵方法' Rails的概念。 例如。如果我想INSERT INTO值()怎么办 而不是使用Tablename.create()...并保存它..
答案 0 :(得分:0)
您可以使用ActiveRecord::Base.connection
执行SQL查询。
sql = <<-eos
INSERT INTO table_name
VALUES (1, 2, 3);
eos
result = ActiveRecord::Base.connection.execute(sql)
但是,除了执行mass insertions of many rows at once之外,很少有充分的理由使用原始SQL进行插入。你放弃了Rails和ActiveRecord附带的所有好东西,比如SQL注入保护,验证等。