【问题标题】:Moved Rails app, now getting db error, possibly devise?移动 Rails 应用程序,现在出现 db 错误,可能设计?
【发布时间】:2013-08-05 12:49:54
【问题描述】:

我最近将我的 Rails 应用程序从一个文件夹移到了另一个文件夹。它在原始文件夹中完美运行。我复制了所有内容。

我认为这可能与设计有关,因为我将它用于用户管理,并且我将数据库作为完全读/写/执行。非常感谢任何建议,我是 Rails 新手。

没有任何修改,我现在运行时遇到这个错误:

Devise::RegistrationsController#create 中的 ActiveRecord::StatementInvalid

SQLite3::ReadOnlyException: 尝试写入只读数据库: INSERT INTO "users" ("created_at", "current_sign_in_at", "current_sign_in_ip", "email", "encrypted_pa​​ssword", "first_name", "last_name", " last_sign_in_at"、"last_sign_in_ip"、"profile_name"、"remember_created_at"、"reset_password_sent_at"、"reset_password_token"、"sign_in_count"、"updated_at") 值 (?, ?, ?, ?, ?, ?, ?, ?, ? , ?, ?, ?, ?, ?, ?) Rails.root: /home/rails

【问题讨论】:

  • 可能正在查看您将代码移动到其中的文件夹的写访问权限可能会有所帮助?

标签: ruby-on-rails sqlite devise


【解决方案1】:

我的猜测是您从另一个用户拥有的目录中复制了文件。在这里它抱怨用户rails 无法打开database.sqlite3。 执行sudo chown -R rails db/ 应该给rails 用户访问数据库的权限。

你是 rails 用户吧?根据/home/rails

【讨论】:

  • 就是这样。多哈。你摇滚。我希望您能在 stackoverflow 上提供 $tips...谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-20
  • 1970-01-01
  • 1970-01-01
  • 2014-12-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多