在推送到生产后使用Authlogic为#<usersession:no =“”credentials =“”“provided =”“>获取未定义的方法”username“:</usersession:>

时间:2010-02-12 21:16:29

标签: ruby-on-rails methods authlogic undefined production

我们从来没有让这个应用程序在生产中运行。应用程序在开发中运行得很好。我确保所有rake任务都是最新的,并为用户和所有人在所有论坛上发布的所有其他内容设置了acts_as_authentic。服务器已多次退回。所有网址上每次都会出现此错误。

以下详细信息:

 NoMethodError in User_sessions#new

显示 app / views / user_sessions / new.html.erb ,其中第6行显示:

undefined method `username' for #<UserSession: no credentials provided>

Extracted source (around line #6):

3: <% form_for @user_session, :url => user_session_path do |f| %>
4:   <%= f.error_messages %>
5:   <%= f.label :username %><br />
6:   <%= f.text_field :username %><br />
7:   <br />
8:   <%= f.label :password %><br />
9:   <%= f.password_field :password %><br />

所以我走到了绳子的尽头。我读了很多Authlogic的赞美,但我花了几个小时试图让它一步一步地工作。我们必须启动这台服务器,但我们所做的一切都不会让这个错误消失。我们现在正在认真考虑虚拟化开发环境,以便用户可以完成任务。

有人有什么想法吗?

2 个答案:

答案 0 :(得分:5)

您是否尝试在生产中使用与开发中相同的数据库?

答案 1 :(得分:5)

哈哈,我觉得同样愚蠢。 必须重新启动服务器!我在heroku设置了一个临时服务器,然后做了很棒的heroku db:push。我也一直收到这个错误

(ActionView :: TemplateError(#&lt; UserSession的未定义方法'用户名':未提供凭据&gt;)

,你得到一个空数据库(或未迁移),但我在发出heroku restart后运行它。无论如何,当我碰到这个帖子时,我也不妨在这里发表观察。干杯!