【发布时间】:2015-05-30 15:23:40
【问题描述】:
我是 Ruby on Rails 的新手,我使用 SQLite3 作为我的示例项目的数据库。我正在尝试在两个模型之间创建普通的一对多关系(例如,每个产品都有一个所有者,每个所有者可以有多个产品)。这可以正常工作,并且可以正确创建数据库架构。但是,当我在数据库管理工具中打开 development.sqlite3(我使用免费的 SQLite Express Personal http://www.sqliteexpert.com/download.html)时,我看不到该数据库具有引用完整性。没有为 Product 表列出外键,即使它确实包含 owner_id 列。
我尝试通过添加选项键来更改 database.yml:
default: &default
adapter: sqlite3
pool: 5
timeout: 5000
options: "PRAGMA foreign_keys=ON"
然后重新创建数据库:
rake db:drop db:create db:migrate
这将重新创建数据库,但再次没有列出外键。
我做错了吗?有没有解决方案。 (PS。如果这很重要,我会在 Windows 8.1 上运行所有这些)
【问题讨论】:
标签: ruby-on-rails ruby sqlite sqlite3-ruby