我的视图中有以下链接,它通过传递帖子的日期和 slug 来调用帖子:
<?php echo $this->Html->link($post['Post']['title'],
array('controller' => 'posts', 'action' => 'view', 'date'=>date('Y/m', strtotime($post['Post']['datetime'])), 'slug'=> $post['Post']['slug'])); ?></h2>
<h4><?php echo $post['Post']['datetime']; ?><
如您所见,我使用 strtotime 使日期时间更漂亮,以便在 URL 中使用。
我实际上并没有使用控制器中的日期来将帖子从数据库中拉出,只是使用蛞蝓,所以它并不重要。
然而问题在于,由于日期中有一个/
,路由器会感到困惑并认为它是 url 的两个独立部分。我该如何解决?
我的路线如下:
Router::connect('/news/:date/:slug',
array('controller' => 'posts', 'action' => 'view'),
array(
//'date' => '[A-Za-z0-9\._]+',
'slug' => '[A-Za-z0-9\._]+',
'pass' => array('date', 'slug')
));