我的 populate.rake 文件有很大的问题 - 从我的 Rails 2.3.5 安装导入我现有的文件后,Rails 3 不想与它有任何关系。我的控制台中出现了数十个(如果不是数百个)错误,其中许多是简单的语句,有些甚至是在纯文本字符串的中间。
Rails 3 填充的语法是否已更改,或者我是否需要为其安装 gem/插件?
非常感谢。
我的 populate.rake 文件有很大的问题 - 从我的 Rails 2.3.5 安装导入我现有的文件后,Rails 3 不想与它有任何关系。我的控制台中出现了数十个(如果不是数百个)错误,其中许多是简单的语句,有些甚至是在纯文本字符串的中间。
Rails 3 填充的语法是否已更改,或者我是否需要为其安装 gem/插件?
非常感谢。
db-populate 是一个使用 populate.rake 文件的 Rails 插件,它不是 Rails 的核心功能,所以是的,你需要一个 gem/plugin(http://github.com/ffmike/db-populate)。
但是,由于您已经升级到 Rails 3,现在可能是切换到使用内置 Rails 种子功能的好时机 - 这样很容易运行 rake db:setup,它将从 database.yml 创建数据库,加载模式,然后运行 seed.rb 或 rake db:reset 删除数据库后执行相同的操作。使您也不必维护第三方代码。只是思考的食物。:)
在从副本中仔细重建 populate.rake 文件后,我发现了问题。我在文件中引入的一些示例文本带有引号,这些引号干扰了属于字符串本身的引号。
一旦 Rails 将字符串解释为已经结束,它就会在逻辑上开始在连续字符串中返回错误,并将其读取为可解释的代码。
一旦我在重建过程中从字符串中删除了所有引号,文件就开始工作了。感谢 Ryan 和 JenJenut 的回复!