mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-03 22:32:40 +08:00
Model parameter added to yii\behaviors\Sluggable::uniqueSlugGenerator callback
This commit is contained in:
@ -85,14 +85,6 @@ class SluggableBehavior extends AttributeBehavior
|
||||
/**
|
||||
* @var array configuration for slug uniqueness validator. Parameter 'class' may be omitted - by default
|
||||
* [[UniqueValidator]] will be used.
|
||||
* For example:
|
||||
*
|
||||
* ```php
|
||||
* [
|
||||
* 'filter' => ['type' => 1, 'status' => 2]
|
||||
* ]
|
||||
* ```
|
||||
*
|
||||
* @see UniqueValidator
|
||||
*/
|
||||
public $uniqueValidator = [];
|
||||
@ -101,7 +93,7 @@ class SluggableBehavior extends AttributeBehavior
|
||||
* slug is not unique. This should be a PHP callable with following signature:
|
||||
*
|
||||
* ```php
|
||||
* function ($baseSlug, $iteration)
|
||||
* function ($baseSlug, $iteration, $model)
|
||||
* {
|
||||
* // return uniqueSlug
|
||||
* }
|
||||
@ -207,7 +199,7 @@ class SluggableBehavior extends AttributeBehavior
|
||||
private function generateUniqueSlug($baseSlug, $iteration)
|
||||
{
|
||||
if (is_callable($this->uniqueSlugGenerator)) {
|
||||
return call_user_func($this->uniqueSlugGenerator, $baseSlug, $iteration);
|
||||
return call_user_func($this->uniqueSlugGenerator, $baseSlug, $iteration, $this->owner);
|
||||
} else {
|
||||
return $baseSlug . '-' . ($iteration + 1);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user