2016-01-06 47 views
0

我有一個在開發中運行良好的應用程序,但是當我部署它時,在訪問我的購物車控制器時不斷收到此錯誤消息:ActionView :: Template :: Error(無法訪問ThreadSafe :: Array): - 生產

::的ActionView ::模板出錯(無法訪問ThreadSafe的::陣列)

它說,錯誤是在這一行:

(<%= @cart_items.count %> itens) 

是否有人知道如何解決呢?

編輯:這裏是堆棧跟蹤

I, [2016-01-05T21:45:14.679041 #4470] INFO -- : Processing by 

CartsController#show as HTML 
I, [2016-01-05T21:45:14.725732 #4470] INFO -- : Rendered carts/show.html.erb within layouts/application (4.7ms) 
I, [2016-01-05T21:45:14.725894 #4470] INFO -- : Completed 500 Internal Server Error in 47ms (ActiveRecord: 1.9ms) 
F, [2016-01-05T21:45:14.727838 #4470] FATAL -- : 
ActionView::Template::Error (Cannot visit ThreadSafe::Array): 
    22: <div class="panel-heading"> 
    23:  <h3 class="panel-title"> 
    24:  <span aria-hidden="true" class="glyphicon glyphicon-shopping-cart"></span> Meu carrinho <small><% if @cart_items.present? %> 
    25:   (<%= @cart_items.count %> itens) 
    26:   <% end %> 
    27:  </small> 
    28:  </h3> 
    app/views/carts/show.html.erb:25:in `_app_views_carts_show_html_erb___1773486621924863592_30719520' 

提前感謝!

+0

您的生產環境是什麼? – qubit

+0

ubuntu,nginx乘客和mysql – Morris

+0

發佈整個堆棧跟蹤。它看起來像是什麼正在取代'Array'。 –

回答

0

解決了我的問題,我不知道爲什麼,但是我的@cart_items不是數組,所以我將@ cart_items.count更改爲@ cart_items.length並且它工作正常!

謝謝!

+0

您使用的是什麼版本的rails和ruby? – Cloxure

0

我遇到了同樣的問題,並且與「count」或「length」沒有關係,問題出在我使用的ruby版本(ruby 2.4 dev)時,請確保您使用的是穩定的ruby和rails版本。

請參閱issue #23720

相關問題