0

我在 heroku 上运行的 rails 项目中的 activeadmin 中使用了以下形式的 parsial。我在本地使用 sqlite,表单效果很好。

    <%= semantic_form_for [:admin, @instagram_tag_search] do |f| %>

       <%= f.inputs do %>
            <%= f.input :name %>
            <%= f.input :active, :as => :boolean  %>
       <% end %>

       <%= f.buttons %>
    <% end %>

在heroku我收到以下错误

2012-09-03T16:01:23+00:00 app[web.1]: ActionView::Template::Error (undefined method `active' for #<InstagramTagSearch:0x000000068893b0>):
2012-09-03T16:01:23+00:00 app[web.1]:     2:    
2012-09-03T16:01:23+00:00 app[web.1]:     4:            <%= f.input :name %>
2012-09-03T16:01:23+00:00 app[web.1]:     3:    <%= f.inputs do %>
2012-09-03T16:01:23+00:00 app[web.1]:     6:    <% end %>
2012-09-03T16:01:23+00:00 app[web.1]:     5:            <%= f.input :active, :as => :boolean  %>
2012-09-03T16:01:23+00:00 app[web.1]:     7: 
2012-09-03T16:01:23+00:00 app[web.1]:     8:    <%= f.buttons %>
2012-09-03T16:01:23+00:00 app[web.1]:   app/views/admin/instagram_tag_searches/_form.html.erb:5:in `block (2 levels) in _app_views_admin_instagram_tag_searches__form_html_erb___2113834955800283278_53730580'
2012-09-03T16:01:23+00:00 app[web.1]:   app/views/admin/instagram_tag_searches/_form.html.erb:3:in `block in _app_views_admin_instagram_tag_searches__form_html_erb___2113834955800283278_53730580'
2012-09-03T16:01:23+00:00 app[web.1]:   app/views/admin/instagram_tag_searches/_form.html.erb:1:in `_app_views_admin_instagram_tag_searches__form_html_erb___2113834955800283278_53730580'

在我看来,postgreSQL 和 sqlite 处理布尔/复选框的方式有所不同。在本地,我存储的值是 1 或 0。我想知道对此的简单修复是什么。

4

1 回答 1

0

你应该确保你已经在 heroku 上运行了所有的迁移。它们通常不作为部署/推送的一部分运行。

heroku rake db:migrate
于 2012-09-03T17:33:38.427 回答