2015-05-19 17 views
5

Chcę zbudować koszyk na moją stronę. Zainstalowałem redis/hiredis, ale kiedy uruchamiam serwer, jeśli przejdę na stronę, na której koszyk będzie mógł pokazać wartość (bieżące elementy w koszyku), lub jeśli chcę przejść na stronę koszyka na zakupy, serwer zawiesza się podając następujące informacje:rails hiredis undefined symbol

Started GET "/cart" for 127.0.0.1 at 2015-05-19 13:43:33 +0300 
    ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations" 
Processing by CartsController#show as HTML 
    User Load (0.2ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? ORDER BY "users"."id" ASC LIMIT 1 [["id", 1]] 
/home/svuser/.rvm/rubies/ruby-2.2.0/bin/ruby: symbol lookup error: /home/svuser/.rvm/gems/ruby-2.2.0/gems/hiredis-0.4.5/lib/hiredis/ext/hiredis_ext.so: undefined symbol: rb_thread_select 

W mojej strony indeksu, tworzę linka do koszyka zgodnie z poniższymi instrukcjami:

<%if signed_in?%> 
    <li> 
    <%= link_to cart_path do%> 
    <i class="fi-shopping-cart"></i> 
    My Cart 
    <%end%> 

Czy istnieje jakiś sposób, aby obejść ten problem? Ciągle nie znam się na szynach i nie mogłem sam tego rozgryźć.

Odpowiedz

6

Miałem podobny problem. W moim przypadku używam Ruby 2.2.2p95 i starej wersji gem hiredis - "0.4.5". Używa metody rb_thread_select, która została usunięta w języku Ruby 2.2

Tak mi pomaga bundle update hiredis.