Heroku上的Authlogic抛出错误

时间:2010-01-04 04:58:32

标签: ruby-on-rails authlogic heroku

是的,我看过this

这就是我在production.log中获得的内容:

ActionView::TemplateError (undefined method `password' for #<User:0x2b0ddb58cdc0>) on line #11 of app/views/users/new.html.erb:
8:         </p>
9:         <p>
10:           <%= f.label :password, "Password:" %><br />
11:           <%= f.password_field :password %>
12:         </p>
13:         <p>
14:           <%= f.label :password_confirmation, "Password again:" %><br />

当我尝试:

$ heroku rake db:reset RAILS_ENV=production

我明白了:

yeqynzfiku already exists
(in /disk1/home/slugs/109616_e6df6f2_8837/mnt)
Couldn't drop yeqynzfiku : #<ActiveRecord::StatementInvalid: PGError: ERROR:  must be owner of database yeqynzfiku
: DROP DATABASE IF EXISTS "yeqynzfiku">

我不知道这意味着什么。我也试过了

$ heroku rake db:reset
$ heroku rake db:migrate RAILS_ENV=production
$ heroku rake db:migrate
$ heroku rake gems:install (for what it's worth)

在开发和生产模式下,一切都在本地运行良好。我的应用程序中有一个.gems文件,当我第一次推送到Heroku时,似乎安装了AuthLogic和Paperclip就好了。

难住了。感谢。

4 个答案:

答案 0 :(得分:21)

听起来你已经解决了,但是遇到这样的问题我发现它很方便heroku restart

例如,在使用heroku rake db:migrate运行迁移后,需要重新启动应用才能看到这些新列。

答案 1 :(得分:2)

而不是db:reset尝试db:migrate VERSION=0db:migrate 我认为他们有重置问题,因为它试图放弃数据库 此外,您不需要将RAILS_ENV=production作为默认的AFAIK ...

答案 2 :(得分:2)

我遇到了同样的问题。我做了heroku restart并且效果很好。

答案 3 :(得分:0)

啊,与.gitignore文件中的很多内容有关。应该在推送给Heroku之前清除它。