gpt4 book ai didi

ruby-on-rails - Active Record 的未定义方法 `hstore'

转载 作者:行者123 更新时间:2023-11-29 11:34:32 25 4
gpt4 key购买 nike

我正在关注 Ryan Bates 在 Railscasts 第 400 集中对 Rails 4 的预览 http://railscasts.com/episodes/400-what-s-new-in-rails-4 .他将应用程序设置为使用 postgres(我已安装)并演示了 hstore。他创建了一个这样的脚手架

rails g scaffold article name content:text published_on:date tags properties:hstore

并在迁移中执行此操作

execute "create extension hstore"
create_table :articles do |t|
t.string :name
t.text :content
t.date :published_on
t.string :tags, array: true
t.hstore :properties
t.timestamps
end

但是,当我运行此迁移时,出现未定义方法“hstore”错误。然后我进入我的测试数据库并创建 hstore 扩展,如下所示(而不是像 Ryan 那样在迁移文件中创建)

psql rails4test2_development
psql (9.2.3)
Type "help" for help.

rails4test2_development=# CREATE EXTENSION hstore;

但是我在运行迁移时遇到了同样的错误。

undefined method `hstore' for #<ActiveRecord::ConnectionAdapters::PostgreSQLAdapter::TableDefinition:0x007fa7ee7a9138>/Users/me/Sites/rails4test2/db/migrate/20130511204911_create_articles.rb:9:in `block in change'
/Users/me/Sites/rails4test2/db/migrate/20130511204911_create_articles.rb:4:in `change'

谁能帮我理解为什么这对我不起作用?

最佳答案

问题是,即使我安装了 Rails 4 gem,应用程序仍在使用 Rails 3.2,它本身不支持 hstore

关于ruby-on-rails - Active Record 的未定义方法 `hstore',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16501799/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com