什么是slu ??
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是slu ??相关的知识,希望对你有一定的参考价值。
我目前正在使用CodeIgniters教程中的精彩文档。然而,有一个经常使用的术语,它被称为“slug”。我经常环顾四周,找出这个术语的含义,我无法理解它是什么以及它是什么。以下是使用时间的示例:
使用此代码,您可以执行两个不同的查询。您可以获取所有新闻记录,或通过其slug获取新闻项目
当您访问资源时,slug是URL的一部分。假设您有一个显示系统中所有汽车的URL,例如下面的URL:
http://localhost/cars
当您想要引用系统中的特定汽车时,您将提供以下URL:
http://localhost/cars/audi-a6/
请注意URL如何仍然非常合乎逻辑,并且非常友好。在使用slug方面,这由您自行决定。上面的audi-a6字符串可能是系统中汽车的唯一标识符 - 假设您有一个包含以下字段的关系数据库:
id
car_name
car_brand
car_unique_identifier
然后,字段car_unique_identifier
将用于存储在slug中显示的值;在我上面用奥迪A6汽车指定的例子中,这是你的audi-a6琴弦所在的地方。
您也可以以其他方式使用它 - 例如,如果您有一个像博客一样运行的帖子控制器。如果是URL编码的话,页面的标题可能是它的slug。对于我们的文章“最佳方法来改善搜索引擎优化”,您可以提供以下网址:
http://localhosts/posts/best-ways-to-make-seo-better
然后你将在slug上运行url_decode()
,你将获得字符串最好的方法来使seo更好,你可以使用它来通过它的标题找到一个帖子。
它不需要停在那里 - 你可能决定有多个slu to来表示某些东西 - 让我们来看看BBC是如何做到的。我从今天开始随机撰写一篇文章,其中包含以下网址:
http://www.bbc.co.uk/news/world-africa-24506006
这链接到一篇名为的文章:非洲联盟敦促ICC放弃针对领导人的案件。 BBC正在这样做的方式是他们使用slug world-africa-24506006的最后一部分,即24506006来识别他们系统中的唯一条目。然后,他们最有可能使用世界非洲来表示一个职位所属的类别(尽管这可能只是一个假设,它仍然是一个有根据的猜测)。
最后,让我们想象下面的DB表,用于研究论文。
id
category
title
您可能有一个类似下面的示例。
http://localhost/papers
此URL代表系统中当前的所有研究论文。然后,您可以通过以下slug访问所有关于物理的研究论文:
http://localhost/papers/physics
我们的slug是物理,我们的数据库选择目前看起来像:
SELECT *
FROM papers
WHERE LOWER(papers.category) = 'physics'
然后,您可以公开以下URL:
http://localhost/papers/physics/gravitation
现在我们的slu is由物理和万有引力组成。我们在幕后的查询可能类似于:
SELECT *
FROM papers
WHERE LOWER(papers.category) = 'physics'
AND LOWER(papers.title) = 'gravitation'
这允许我们唯一地识别我们系统中的条目。
所以我们反复使用slugs来过滤掉我们的信息。在示例中,当我们运行没有任何slugs的URL时:
http://localhost/papers
我们想列出所有可用的研究论文。当我们使用物理slug运行URL时:
http://localhost/papers/physics
我们想列出所有关于物理学的研究论文,从而缩小我们的研究成果。最后,当我们提供两个slu,时,我们可以唯一地识别我们系统中的一个条目。
http://localhost/papers/physics/gravitation
我们可以用不同的方式建模吗?当然!根据我们系统的要求,我们可以对关系表进行规范化和非规范化。我们可以有一个永久链接系统,所以我们的帖子表看起来像这样:
id
title
permalink
然后我们可能会有以下条目:
| 20013 | Gravitation | physics-gravitation-breakthrough |
因此暴露URL:
http://localhost/papers/physics-gravitation-breakthrough
在上面的例子中,slug物理 - 引力 - 突破允许我们通过以下方式唯一地识别帖子:
SELECT *
FROM papers
WHERE papers.permalink = physics-gravitation-breakthrough
简短的回答
这是这个问题的URL中的what-is-a-slug
部分。
“slug”完全取决于上下文,但在编程中或者就此问题而言,“slug”指的是URL。我们知道一个URL can't contain every character。这就是为什么当任何帖子,页面,控制器都有这些类型的标题,所以它的slug用作URL。哪些可能会自动导出。
因此,在一行中,slug是任何名称的URL友好版本。
上面给出的所有答案都是正确的,但我想直接回答这个问题。 Codeigniter教程示例中的Slug引用了URL“news”。如果您的数据库中没有“新闻”作为$ slug或slug,并且您在浏览器中运行此URL,则“index.php / news / view”将返回错误404_page未找到。我遇到了这个问题,直到我阅读了上述答案,这些答案让我了解了Slug的含义。我将slug更改为数据库表中的新闻。 Slug就像一个指针。
以下是slug的示例:
<?php
function create_slug($string){
$slug=preg_replace('/[^A-Za-z0-9-]+/', '-', $string);
return $slug;
}
echo create_slug('does this thing work or not');
//returns 'does-this-thing-work-or-not'
?>
以上是关于什么是slu ??的主要内容,如果未能解决你的问题,请参考以下文章
“你什么意思”之基于RNN的语义槽填充(Pytorch实现)
text Konfigurace v neonu - služby