如何使用“模板”控制器制作页面并在VoltRb中查看

时间:2015-06-24 02:15:09

标签: html ruby pagination opalrb voltrb

我在Volt遇到问题,我需要一堆带有“模板”控制器和视图的页面。让我更详细地解释一下:

比如说,我有一个关于书籍的网站。我在http://localhost:3000/books有一个页面。它用作其他页面的索引,例如http://localhost:3000/books/fantasy/lord_of_the_rings。我希望所有具有书籍的页面都有一个控制器和视图,这样我就不必手动添加控制器并查看我想要添加的每本书。相反,我只想在每个包含书籍的页面中添加内容,以使我的工作流程尽可能保持干净。

因此,app/main/views下的文件结构如下所示:

views
├── books
│   ├── index.html
│   └── template.html
└── main
    ├── index.html
    └── main.html

app/main/controllers下的文件结构如下所示:

controllers
├── books_controller.rb
└── main_controller.rb

问题是我不知道如何在app/main/config/routes.rb中设置它,因为我猜这是定义页面的URL以及它们的控制器,操作等等。我如何实现这样的目标在伏特?

1 个答案:

答案 0 :(得分:2)

例如,您可以使用以下路线:

client '/books', controller: 'books', action: 'index'
client '/books/{{ genre }}/{{ title }}', controller: 'books', action: 'template'

这会将两个请求都路由到books控制器。它将通过模板控制器操作和视图中的params集合使genretitle可用。然后,您可以使用此信息从商店(或任何地方)加载正确的书籍。

您可以在此处详细了解路线:http://docs.voltframework.com/en/docs/routes_file.html