mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-11 19:20:01 +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
|
* @var array configuration for slug uniqueness validator. Parameter 'class' may be omitted - by default
|
||||||
* [[UniqueValidator]] will be used.
|
* [[UniqueValidator]] will be used.
|
||||||
* For example:
|
|
||||||
*
|
|
||||||
* ```php
|
|
||||||
* [
|
|
||||||
* 'filter' => ['type' => 1, 'status' => 2]
|
|
||||||
* ]
|
|
||||||
* ```
|
|
||||||
*
|
|
||||||
* @see UniqueValidator
|
* @see UniqueValidator
|
||||||
*/
|
*/
|
||||||
public $uniqueValidator = [];
|
public $uniqueValidator = [];
|
||||||
@@ -101,7 +93,7 @@ class SluggableBehavior extends AttributeBehavior
|
|||||||
* slug is not unique. This should be a PHP callable with following signature:
|
* slug is not unique. This should be a PHP callable with following signature:
|
||||||
*
|
*
|
||||||
* ```php
|
* ```php
|
||||||
* function ($baseSlug, $iteration)
|
* function ($baseSlug, $iteration, $model)
|
||||||
* {
|
* {
|
||||||
* // return uniqueSlug
|
* // return uniqueSlug
|
||||||
* }
|
* }
|
||||||
@@ -207,7 +199,7 @@ class SluggableBehavior extends AttributeBehavior
|
|||||||
private function generateUniqueSlug($baseSlug, $iteration)
|
private function generateUniqueSlug($baseSlug, $iteration)
|
||||||
{
|
{
|
||||||
if (is_callable($this->uniqueSlugGenerator)) {
|
if (is_callable($this->uniqueSlugGenerator)) {
|
||||||
return call_user_func($this->uniqueSlugGenerator, $baseSlug, $iteration);
|
return call_user_func($this->uniqueSlugGenerator, $baseSlug, $iteration, $this->owner);
|
||||||
} else {
|
} else {
|
||||||
return $baseSlug . '-' . ($iteration + 1);
|
return $baseSlug . '-' . ($iteration + 1);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user