Heroku运行rake db:种子坏了

时间:2013-01-17 23:26:51

标签: ruby-on-rails heroku refinerycms

我正在使用Refinery CMS和自定义引擎,但我无法运行heroku rake db:seed。这似乎导致我的应用程序在生产中中断。

一切都在本地工作正常,但是当我尝试为我的数据库播种时,我得到了这个输出:

https://gist.github.com/f90b545dc85c44addffd

对可能导致此问题的任何想法。这是我的seeds.rb文件:

(Refinery.i18n_enabled? ? Refinery::I18n.frontend_locales : [:en]).each do |lang|
  I18n.locale = lang

  if defined?(Refinery::User)
    Refinery::User.all.each do |user|
      if user.plugins.where(:name => 'refinerycms-projects').blank?
        user.plugins.create(:name => 'refinerycms-projects',
                            :position => (user.plugins.maximum(:position) || -1) +1)
      end
    end
  end

  url = "/projects"
  if defined?(Refinery::Page) && Refinery::Page.where(:link_url => url).empty?
    page = Refinery::Page.create(
      :title => 'Projects',
      :link_url => url,
      :deletable => false,
      :menu_match => "^#{url}(\/|\/.+?|)$"
    )
    Refinery::Pages.default_parts.each_with_index do |default_page_part, index|
      page.parts.create(:title => default_page_part, :body => nil, :position => index)
    end
  end
end

1 个答案:

答案 0 :(得分:0)

为了解决这个问题,我需要在gemfile中指定ruby '1.9.3'。显然,这与将Refinery CMS应用程序部署到Heroku有关。

在我的gemfile中使用ruby '1.9.3'部署到heroku后,我能够heroku run rake db:seed没问题。

有关这方面的更多信息:

https://groups.google.com/forum/?fromgroups=#!topic/refinery-cms/bvGsot-wFxc