0

我只是在构建我的应用程序的开始阶段 - 所以这里没什么太严重的。它在我的本地环境中运行良好,但似乎在 heroku 上崩溃了。

代码是这样的:

我在设计中有一个用户模型。我在用户、作者和读者下有 2 个子类。

添加阅读器的表单如下所示:

<%= form_for(@reader, :url => user_registration_path) do |f| %>

  <div><%= f.label :email %><br />
  <%= f.email_field :email, :autofocus => true %></div>

  <div><%= f.label :password %><br />
  <%= f.password_field :password %></div>

  <div><%= f.label :password_confirmation %><br />
  <%= f.password_field :password_confirmation %></div>

  <div><%= f.label :name %><br />
  <%= f.text_field :name %></div>

  <div><%= f.label :zipcode %><br />
  <%= f.text_field :zipcode %></div>

  <div><%= f.submit "Sign up" %></div>
<% end %>

控制器具有:

  def index
    @reader = Reader.new
  end

模型很简单:

Class Reader < User
end

虽然我还没有尝试使用表单创建新用户,但在本地环境中加载页面时没有收到任何错误。然而在heroku上,我得到了undefined method 'model_name' for NilClass:Class

我已经清理了数据库,但没有运气就重新启动了服务器。

有任何想法吗?

4

1 回答 1

0

我看起来@reader 没有设置。该表单不在 index.html.erb 中。它必须是 new 和 edit 操作使用的部分 _form.html.erb。所以你必须在阅读器控制器的这些操作中设置@reader

于 2013-06-05T02:25:45.117 回答