ruby-on-rails – Rails部分与单表继承

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails部分与单表继承前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在rails中使用partials以及单表继承.我目前有这个工作:
render partial: @vehicle

# which renders the relevant view,depending on object type,eg:
#   views/trucks/_truck.haml
#   views/car/_car.haml

我想保留这些默认视图,并为每个对象创建一个附加的紧凑视图,也许就像这样

# example code only,I want to write something like:
render partial: 'compact',locals: {vehicle: @vehicle}

# and then have this render (for example) with
#   views/trucks/_compact.haml
#   views/car/_compact.haml

我可以愉快地重命名事物或更改文件名或位置,但最简单的方法支持两种视图(简洁和默认)?

稍后会有更多的课程,所以寻找非常干净,优雅的代码.

(rails 3.0.5 on ruby​​ 1.9.2)

解决方法

要得到你所要求的,你应该这样做:
render partial: "#{@vehicle.type.tableize}/#{@vehicle.type.underscore}",object: @vehicle

你会得到渲染:

views/trucks/_truck.html.haml

并且对象将被访问为:

@truck

猜你在找的Ruby相关文章