类别在 heroku 的生产中不起作用 Rails 4

Categories not working in production at heroku Rails 4

我是 rails 的新手,仍在学习我的应用程序的类别功能在 Heroku 的开发中有效,但在生产中无效,非常感谢任何帮助。

在我的pins_controller.rb

def index
    if params[:category].blank?
      @pins = Pin.all.order("created_at DESC").paginate(page: params[:page], per_page: 50)
    else
      @category_id = Category.find_by(name: params[:category]).id
      @pins = Pin.where(category_id: @category_id).order("created_at DESC").paginate(page: params[:page], per_page: 20)
    end 
  end

模型 category.rb 和 pin.rb

之间建立了关联

类别是使用“Rails 控制台”创建的

我在导航栏中添加了一个下拉菜单,其中包含 16 个类别,这是代码,

_header.html.erb

<li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown"><span class="fa fa-th"></span> Categories<b class="caret"></b></a>
  <ul class="dropdown-menu">
    <% Category.all.each do |category| %>
      <li><%= link_to category.name, pins_path(category: category.name) %></li>
    <% end %>
  </ul>
</li>

_form.html.erb

<div class="form-group">
    <%= f.collection_select :category_id, Category.all, :id, :name, {prompt: "Select category"} %>
  </div>

这个问题已经解决,愚蠢的我只需要在 Heroku 的生产中重新创建类别,如下所示:$ Heroku 运行 rails console 在生产中启动控制台,然后 $ Category.connection 建立连接,然后是使用 Category.create(name: "Action") 等创建类别的时候了。一切正常!非常感谢 unicasts.com

的 MackenzieChild