我在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.htmlapp/main/controllers下的文件结构如下所示:
controllers
├── books_controller.rb
└── main_controller.rb问题是,我不知道如何在app/main/config/routes.rb中设置它,因为我猜这就是定义页面URL的地方,以及它们的控制器、操作等等。如何在Volt中实现这样的目标呢?
发布于 2015-06-24 07:14:36
例如,您可以使用以下路由:
client '/books', controller: 'books', action: 'index'
client '/books/{{ genre }}/{{ title }}', controller: 'books', action: 'template'这将将两个请求路由到图书控制器。它将通过模板控制器操作和视图中的params集合提供genre和title。然后,您可以使用这些信息从商店(或其他地方)加载正确的书籍。
您可以在这里阅读更多有关路线的信息:file.html
https://stackoverflow.com/questions/31016485
复制相似问题