我在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以及它们的控制器,操作等等。我如何实现这样的目标在伏特?
答案 0 :(得分:2)
例如,您可以使用以下路线:
client '/books', controller: 'books', action: 'index'
client '/books/{{ genre }}/{{ title }}', controller: 'books', action: 'template'
这会将两个请求都路由到books控制器。它将通过模板控制器操作和视图中的params集合使genre
和title
可用。然后,您可以使用此信息从商店(或任何地方)加载正确的书籍。
您可以在此处详细了解路线:http://docs.voltframework.com/en/docs/routes_file.html