我有一个基于Laravel 5.2的亚马逊项目。
我需要在仅使用ID预览的页面的URL中显示产品和类别的标题。
例如:
ID: 2
Name: Apple iPhone 6s
网址:www.mysite.com/showproduct/2
我需要这样:www.mysite.com/showproduct/2-Apple-IPhone-6s
答案 0 :(得分:0)
试试这个:https://github.com/cviebrock/eloquent-sluggable
不要再制造车轮;)
答案 1 :(得分:0)
如果您查看Laravel 5.2文档,特别是 Route Parameters 部分,您会发现有一个红色框说:
注意:路由参数不能包含 - 字符。改为使用下划线(_)。
所以你的路线可能是:
Route::get('showproduct/{title}', 'Controller@action');
但是2-Apple-IPhone-6s
应该是2_Apple_IPhone_6s
,而不是Route::get('showproduct/{id}/{title?}', 'Controller@action');
,如果您可以将其用作以下内容,那么IMO会更好:
<div class="<?php echo $container;?>">
<div class="media-back-button">
<script type = 'text/javascript'>
var back_title = "<?php echo get_the_title(); ?>"; // current page/post title
document.write('<a href="' + document.referrer + '">Back To Media - ' + back_title +'</a>');
</script>
</div>
</div>
希望这有帮助。