我有一个Product模特.
如何在控制器中获取Rails 3中产品的URL.
例如(伪代码):
def foobar
@product = Product.first
puts @product.url
end
Run Code Online (Sandbox Code Playgroud)
这样的事情可能吗?
Sim*_*tti 31
假设Product模型映射为:routes.rb文件中的资源:
def foobar
@product = Product.first
url = product_url(@product)
end
Run Code Online (Sandbox Code Playgroud)
Laa*_*aas 19
除了命名路由,product_url(@product)您还可以使用常规url_for(@product)(docs).这有副作用,如果您有嵌套或命名空间的路由,它会更短:
customer_product_url(@customer, @product)
url_for([@customer, @product])
Run Code Online (Sandbox Code Playgroud)
另请注意,默认情况下url_for会生成相对 URL product_path,这取决于您的需求可能是好还是坏.要获取完整的URL,请传递:only_path => false.
| 归档时间: |
|
| 查看次数: |
14267 次 |
| 最近记录: |