如何使用 Rails seed.rb 播种 sqlite3?
How to seed sqlite3 with Rails seed.rb?
可能与谁有关,
基本 Rails 应用程序。通过 rails g model images url:string
创建了一个名为 "Images" 的模型
将一些 jpg 文件放入 Public 文件夹并设置 seed.rb 文件,如下所示:
images = Image.create([
{ url: "/public/images/01.jpg"},
{ url: "/public/images/02.jpg"},
{ url: "/public/images/03.jpg"},
{ url: "/public/images/04.jpg"},
{ url: "/public/images/05.jpg"},
{ url: "/public/images/06.jpg"},
{ url: "/public/images/07.jpg"},
{ url: "/public/images/08.jpg"},
{ url: "/public/images/09.jpg"},
{ url: "/public/images/10.jpg"},
{ url: "/public/images/11.jpg"},
{ url: "/public/images/12.jpg"},
{ url: "/public/images/13.jpg"},
{ url: "/public/images/14.jpg"},
{ url: "/public/images/15.jpg"},
{ url: "/public/images/16.jpg"},
{ url: "/public/images/17.jpg"},
{ url: "/public/images/18.jpg"},
{ url: "/public/images/19.jpg"},
{ url: "/public/images/20.jpg"}
])
运行 rake db:setup
、rake db:seed
和 rake db:migrate
尝试为 sqlite3 数据库设置种子。
我进入 db/development.sqlite3
和 运行 .databases
并没有找到任何东西。我 运行 .tables
什么也没找到。
sqlite> .databases
seq name file
--- --------------- ----------------------------------------------------------
0 main
为什么这没有为数据库播种?
谢谢!
彼得
此时您似乎遇到了一些问题。
您正在尝试使用以下命令创建模型:
rails g model images url:string
按照惯例,您应该像这样大写和使用模型名称的单数形式:
rails g model Image url:string
您写道,您 "Ran rake db:setup
, rake db:seed
, and rake db:migrate
to try to seed the sqlite3 data base." 在尝试为数据库设置种子之前,您必须 运行 rake db:migrate
,否则,您将尝试使用数据为不存在的表设置种子。尝试 rake db:setup db:migrate db:seed
然后看看会发生什么。
可能与谁有关,
基本 Rails 应用程序。通过 rails g model images url:string
将一些 jpg 文件放入 Public 文件夹并设置 seed.rb 文件,如下所示:
images = Image.create([
{ url: "/public/images/01.jpg"},
{ url: "/public/images/02.jpg"},
{ url: "/public/images/03.jpg"},
{ url: "/public/images/04.jpg"},
{ url: "/public/images/05.jpg"},
{ url: "/public/images/06.jpg"},
{ url: "/public/images/07.jpg"},
{ url: "/public/images/08.jpg"},
{ url: "/public/images/09.jpg"},
{ url: "/public/images/10.jpg"},
{ url: "/public/images/11.jpg"},
{ url: "/public/images/12.jpg"},
{ url: "/public/images/13.jpg"},
{ url: "/public/images/14.jpg"},
{ url: "/public/images/15.jpg"},
{ url: "/public/images/16.jpg"},
{ url: "/public/images/17.jpg"},
{ url: "/public/images/18.jpg"},
{ url: "/public/images/19.jpg"},
{ url: "/public/images/20.jpg"}
])
运行 rake db:setup
、rake db:seed
和 rake db:migrate
尝试为 sqlite3 数据库设置种子。
我进入 db/development.sqlite3
和 运行 .databases
并没有找到任何东西。我 运行 .tables
什么也没找到。
sqlite> .databases
seq name file
--- --------------- ----------------------------------------------------------
0 main
为什么这没有为数据库播种?
谢谢!
彼得
此时您似乎遇到了一些问题。
您正在尝试使用以下命令创建模型:
rails g model images url:string
按照惯例,您应该像这样大写和使用模型名称的单数形式:
rails g model Image url:string
您写道,您 "Ran rake db:setup
, rake db:seed
, and rake db:migrate
to try to seed the sqlite3 data base." 在尝试为数据库设置种子之前,您必须 运行 rake db:migrate
,否则,您将尝试使用数据为不存在的表设置种子。尝试 rake db:setup db:migrate db:seed
然后看看会发生什么。