Использую unclead yii2-multiple-input. Хочу реализовать следующее: Когда пользователь вводит email, происходит проверка, существует ли такой email в базе. Если не существует, то выводится сообщение "Автор с таким e-mail еще не зарегистрирован. Вы можете добавить его, перейдя по ссылке". Но вместо "ссылке" отображается <a href="my_url">ссылке</a>. Как сделать, чтобы отображался не html-код ссылки, а непосредственно ссылка?
Вот что у меня в форме:
Код: Выделить всё
<?= $form->field($model, 'authors')->widget(MultipleInput::class, [
'min' => 1,
'max' => 5,
'enableError' => true,
'columns' => [
[
'name' => 'emails',
'errorOptions' => [
'class' => 'invalid-feedback',
'encode' => false
],
],
// и т.д.
Код: Выделить всё
public function rules()
{
return [
...
['author', 'validateAuthors'],
...
]
...
]
Код: Выделить всё
public function validateAuthors($attribute)
{
$emailValidator = new EmailValidator();
$emailValidator->enableIDN = true;
foreach($this->$attribute as $index => $row) {
$error = null;
$emailValidator->validate($row['emails'], $error);
if (!empty($error)) {
$key = $attribute . '[' . $index . '][emails]';
$this->addError($key, $error);
}
$authors = Author::find()->where(['email' => $row['emails']])->exists();
if ($authors === false) {
$key = $attribute . '[' . $index . '][emails]';
$link = Html::a('ссылке',['author/authorcreate']);
$this->addError($key, 'Автор с таким email не зарегистрирован. Вы можете добавить его, перейдя по '.$link);
}
}
}