jourdon / sluggable
Easy create slug for your Eloquent models in Laravel
1.0
2018-08-31 09:20 UTC
Requires
- jourdon/slug: ^1.0
- laravel/framework: ~5.5
This package is not auto-updated.
Last update: 2024-10-27 06:18:19 UTC
README
说明
我的博客有很多文章,很多分类,他们的链接是这样的
//文章
http://example.com/post/1
http://example.com/post/2
//分类
http://example.com/category/1
http://example.com/category/2
这看起来非常不友好,我希望将后面的id换成文章的村里或者分类的名称,这样看起来比较友好,从链接就能看出来文章的内容,对搜索引擎也比较友好,像这样:
http://example.com/post/php-is-the-best-language-in-the-world
http://example.com/post/yes-i-think-so
//分类
http://example.com/category/php
http://example.com/category/laravel
你只需要安装本扩展包,你不需要另外做什么,它会自动帮你搞定,可以根据你的Eloquent模型生成相应的slug,让你的url更加的友好。
##要求
- PHP版本: 7.1+
- laravel版本:5.5+
安装
1、 使用 Composer 安装:
composer require jourdon/sluggable
2、 配置
本扩展包本身不需要配置文件,也无需配置,但本扩展包依赖于 laravel-slug ,所以需要导出
laravel-slug
的配置文件,具体请前往 laravel-slug 查看并配置。
3、 添加Slug字段
你的数据表中需要有slug字段,执行下面的命令生成迁移文件,以Post模型为例:
php artisan jourdon:make_slug Post
4、 运行迁移
php artisan migrate
如果你的数据表中已经有slug字段,请忽略 3,4
5、将Eloquent模型的slug加入缓存,注意这里,Laravel默认的Model目录在app下,假如你的Eloquent模型都放在app/models目录下,你需要在Eloquent模型前加上Models/
php artisan jourdon:make_cache Models/Post
使用
还是以Post模型为例,我们需要使用SlugTrait
use Jourdon\Sluggable\Traits\SlugTrait; class Post extends Model { use SlugTrait; . . . }
如果你还需要将Category的URL也变得这么漂亮,只需要重复3,4,5即可。