ruby-on-rails - Rails schema.rb 中 sqlite_sp_functions 的用途是什么?

标签 ruby-on-rails ruby ruby-on-rails-4

some others , 我遇到了错误

"ActiveRecord::StatementInvalid: SQLite3::SQLException: object name reserved for internal use: sqlite_sp_functions: CREATE TABLE "sqlite_sp_functions" ("name" text, "text" text)"

运行时rake test在 Rails 项目上。

schema.rb 中的违规行是:

create_table "sqlite_sp_functions", id: false, force: true do |t|
  t.text "name"
  t.text "text"
end

关于之前关于此的查询的建议涉及编辑 schema.rb或删除该文件并重新生成它,但是 schema.rb (以及有问题的代码)在每次迁移时都会重新生成(另外,我不想在不知道其含义的情况下删除 Rails 生成的代码),所以这并不是一个真正令人满意的解决方案。

那么 sqlite_sp_functions 是什么?表,以及如何让 Rails 生成 schema.rb不会损坏的文件 rake test对于项目?

最佳答案

根据 https://stackoverflow.com/a/25077833/601782 :

Add the following config line to config/application.rb or in config/environments/development.rb:

ActiveRecord::SchemaDumper.ignore_tables = /^sqlite_*/

This will ignore all tables starting with "sqlite_" in your database during the schema dump.

关于ruby-on-rails - Rails schema.rb 中 sqlite_sp_functions 的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23755282/

相关文章:

ruby-on-rails - 我如何查看哪些作业已使用 resque-scheduler 排队?

ruby-on-rails - 向嵌套资源发表评论时 ActiveAdmin 抛出错误

ruby - "n.times do" block 只返回 n 的值

ruby-on-rails - link_to block 不起作用

ruby-on-rails - 在 FactoryBot 上指定所需的字段

ruby-on-rails - "uninitialized constant"当包含测试助手模块时

jquery - Rails 3.1 提交表单而不刷新

ruby - Thor - 最后注入(inject)文件

ruby-on-rails - 如果 Ruby on Rails 中存在外键,如何删除它?

javascript - 呈现部分内容并转义书签的 html/javascript