我正在Laravel中建立一个博客,似乎无法弄清楚如何生成转义的URL HTML::link(..).例如,我有链接到博客中的不同类别,如部门新闻,我试图得到一个格式如此的链接 - http://localhost/blog/category/department+news.,其中Department News生成的$post->category
我尝试了以下代码,它产生了 http://localhost/blog/Department News
{{ HTML::link('admin/blog/category/' . $post->category, $post->category) }}
Run Code Online (Sandbox Code Playgroud)
如何逃避这一点并生成所需的URL?
通常,您有每个帖子类别slug在数据库中使用URL片段的列,然后使用如下内容:
HTML::link('blog/category/'.$post->category->slug, $post->category->name)
Run Code Online (Sandbox Code Playgroud)
Laravel似乎无法自动编码URL的某些部分,因此您必须自己编写:
HTML::link(
'admin/blog/category/'.urlencode(strtolower($post->category)),
$post->category
)
Run Code Online (Sandbox Code Playgroud)
您可能想要考虑使用"slug"方法.您不一定要将它存储在数据库中,您可以让您的类动态生成它:
class Category {
function slug() {
return urlencode(strtolower($this->name));
}
}
Run Code Online (Sandbox Code Playgroud)
我不确定你到底在做什么,但希望你明白了.
| 归档时间: |
|
| 查看次数: |
22447 次 |
| 最近记录: |