编制生产资产失败

时间:2016-05-13 23:56:07

标签: ruby-on-rails heroku

我正在部署一个使用Monologue Framework构建的简单CMS系统。我已经安装了引擎,并通过自己的自定义控制器和模型添加,例如页面和模板。

每当我将应用程序部署到Heroku(或在本地编译资产)时,它都会失败并给我这个错误:

    I, [2016-05-13T23:45:15.189577 #31757]  INFO -- : Writing /home/ubuntu/workspace/public/assets/monologue/bootstrap/bootstrap-datepicker-b6d82843a72ae20b71775b201958ed7dc6bc437a71c554b94c20805cea49b2ad.css.gz
rake aborted!
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR:  relation "pages" does not exist
LINE 5:                WHERE a.attrelid = '"pages"'::regclass
                                          ^
:               SELECT a.attname, format_type(a.atttypid, a.atttypmod),
                     pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod
                FROM pg_attribute a LEFT JOIN pg_attrdef d
                  ON a.attrelid = d.adrelid AND a.attnum = d.adnum
               WHERE a.attrelid = '"pages"'::regclass
                 AND a.attnum > 0 AND NOT a.attisdropped
               ORDER BY a.attnum

我对application.rb或production.rb文件中的Assets没有特殊设置。我已经声明了一些资产要在assets.rb中进行预编译,但删除这些资产并不会改变任何内容。

有一次,我确实使用了ActiveRecord页面缓存,但我不再需要它,并且由于与Page模型的冲突,我删除了它。

我还创建了一个新的rails应用程序并将其部署到heroku,并安装了Monologue引擎。该应用程序将预编译所有资产并部署,没有任何问题。

如果需要更多文件或详细信息,请告知我们,我会在此处添加。

提前致谢!

1 个答案:

答案 0 :(得分:0)

我遇到的问题是,在其中一个资产(admin.js.erb)中,该文件在<%= @page.each do |page| %>上调用,但未创建或迁移数据库。一旦Heroku完成编译资产,我就加入资产,并重新部署。