2014-12-21 82 views
1

Ajax局部圖不在我的rails應用程序中呈現。Ajax未在rails應用程序中呈現局部圖像

我有一個Article模型。我正在嘗試使用Ajax添加新文章

請找到下面的代碼。

cart.html.erb

<div id="articles"> 
    <%= render 'showarticles' %> 
</div> 

cart.js.erb

$('#articles').html('<%= escape_javascript(render('static_pages/showarticles')) %>'); 
$('.form-control').val('') 

的routes.rb

match 'cart/:id', to: 'static_pages#cart', via: [:get, :post] 

_showarticles.html.erb

<%= form_for @article, :remote => true do |f| %> 
<%= f.text_area :name, :class => "form-control" %> 
<% end %>  
<% @art.each do |a| %> 
<%= a.name %> 
<% end %> 

static_pages_controller.rb

def cart 
    @art = Article.all 
    @article = Article.new 
    respond_to do |format| 
    format.html 
    format.js 
    end 
end 

謝謝!

+1

你是如何觸發調用購物車的行動? –

+0

@japed:這是我觸發購物車操作的方式:redirect_to action:'cart',controller:'static_pages',id:cart.id – webster

+0

那條線在哪裏? –

回答

1

我能夠加入這一行我routes.rb文件來解決這個問題:

match 'cart', to: 'static_pages#cart', via: [:get, :post] 
0

好吧,

所以這

<%= form_for @article, :remote => true do |f| %> 
<%= f.text_area :name, :class => "form-control" %> 
<% end %>  
<% @art.each do |a| %> 
<%= a.name %> 
<% end %> 

必去的文章創建方法。這就是爲什麼你的cart.js.erb沒有被調用。無論是設置URL <%= form_for @article, :url => url_for(:controller => 'static_pages, :action => 'cart', :id => @cart.id), :remote => true do |f| %>或最好在您的文章控制器的創建行動處理它

相關問題