2010-01-23 60 views
0

我知道的创建或更新方法完成后,他们的方法是这样如何修改RoR中的创建和更新方法?

respond_to do |format| 
    format.js 
end 

因为我从遥远的形式对非远程形式改变我的形式,所以我不会使用的格式。 JS了,我只是想刷新页面,用户创建/更新一个产品后,让我有这样的代码:

respond_to do |format| 
    page.reload 
end 

但它不工作,所以我尽量不使用的respond_to做,我只有page.reload。但它也给我这样的网站:

http://localhost:3000/products/50 

我只是想后,我创建/更新,我为什么不能做到这一点以这种方式重新加载页面?

回答

1

reload方法使用JavaScript重新载入浏览器的当前位置。我建议你在创建或更新资源后可能想要做一个服务器端重定向。像这些替代品一个

redirect_to product_path(@product) # Redirect to the 'show' page for the product 
redirect_to products_path   # Redirect to the products' index page 
+0

如何分配product_path?在routes.rb中? – DNB5brims 2010-01-23 15:25:03

+0

我在这里有一些问题,我没有产品型号,我只有控制器,帮手和视图。 – DNB5brims 2010-01-23 15:33:08

+0

你有什么模特? – 2010-01-23 15:45:03

0

我如何分配product_path?在routes.rb中?

在routes.db则可以:

  1. map.product的产品/:ID',:控制器=> '产品',:动作=> '视图'
  2. 地图。资源:产品
  3. map.resource:产品

1)会给你product_path(123)和product_url 2)会给你product_path,new_product_path,edit_produc t_path等

HTH