2016-04-09 20 views
0

ile bir erb dosyasında göstermek ve poster işlevini kullanmak için imdb gem kullanarak, bir Ruby sunucusunda sinatra kullanarak posterler (imdb gem) erişmeye çalışıyorum ve sonra benim görünümünde (erb dosya) görüntüler. Bir hata gösterir (poster için tanımlanmamış bir yöntem), ancak kodu aşağıdaki gibi .movies ile uygularsam hata göstermez. Aşağıda imdb gem ve kodu benim erb den çağırıyor. Umarım birileri bana taşlar kullanmaya yeni başlamışken yardımcı olabilir. Teşekkürler.Sinatra ve Ruby

# This is the file from my server.rb file in sinatra 
# The :search_term takes an input from a HTML form. 
post "/calculate" do 
    movie = params[:search_term] 
    search1 = Imdb::Search.new(movie) 
    @output = search1 
    @output.movies 
    redirect "/movie_result" 
end 

#erb file content 
'<%= @output %>' 
+0

'erb' dosya adını gönderir misiniz? Bu – Kashyap

+0

hata ayıklamada yardımcı olabilir Tüm erb dosyasında burada gösterilmektedir, doğru olup olmadığından emin değil. Cevabınız için teşekkürler. –

cevap

-1

deneyin sizin erb dosyası

2

O taşlar hakkında değil üzerinde

<img src="<%= movie.poster %>" > 

yapmak. Bu istek, cevap döngüsü ile ilgili. Sana hatalarını göstereyim.

İstemci size posta yöntemiyle bazı paramik yollar gönderdiğinde, kodunuz bir işlem yapar ve daha sonra yönlendirme ile yanıt verir. Görünüm dosyası içinde işlem yapmak ve göstermek için herhangi bir yerel parametreyle değil.

Yerel params'lara sahip bir görünüm dosyası oluşturmak, eylemi yeni bir rotaya yeniden yönlendirmekten farklıdır. Örnek, örnek olarak

.

routes.rb

get '/mocko' do 
    @x = "Mocko" 
    redirect '/locko' 
end 

get '/locko' do 
    erb :locko, :layout => false 
end 

locko.erb

Is there x?<strong><%= @x.nil? ? "No" : "Yes" %></strong> 

Çıktı

enter image description here

(I mocko için istekte bulunduğunuzda yönlendirir beni hemen locko)

P.S. Oradan çözebileceksen haberim olsun.

+0

Yanıtı aldığınız için teşekkürler İletinin alt kısmındaki yönlendirmeyi kaldırdığımda çalıştım ve erb (: movie_result) ile çalıştığı göründü ve görüntü yerleşimde  olarak değiştirdim Gülen yüz hile gibi görünüyordu. Yardım için çok teşekkürler, çok takdir ediyorum. :) –