Я начинаю с фреймворка Yii, и это мой первый фреймворк … в точку:
У меня есть форма для CMS, чтобы ввести новое сообщение в блоге, статью. Я также создал представление отладки, чтобы увидеть данные, которые передаются перед сохранением в базе данных. Дело в том, что при использовании формы 2 поля не передают данные в представление отладки … Я надеюсь, что более опытные люди может помочь увидеть, что я делаю не так здесь.
мой код:
-Форма просмотра (new.php)
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
?>
<?php $form = ActiveForm::begin(); ?>
<?= $form->field($model, 'Title') ?>
<?= $form->field($model, 'PublicationDate')->input('date') ?>
<?= $form->field($model, 'Content')->textarea(['rows' => 5]) ?>
<?= $form->field($model, 'tags') ?>
<div class="form-group">
<?= Html::submitInput('Submint', ['class' => 'btn-primary']) ?>
</div>
Модель статьи (Article.php):
<?php
namespace app\models;
use yii\db\ActiveRecord;
class Article extends ActiveRecord{
public $tags;
public static function tableName()
{
return 'Article';
}
public function rules()
{
return[
[['Title', 'Content'], 'required'],
];
}
}
представление отладки:
<?php
use yii\helpers\Html;
?>
<p>You have entered the following information:</p>
<ul>
<li><label>Title</label>: <?= Html::encode($model->Title) ?></li>
<li><label>PublicationDate</label>: <?= Html::encode($model->PublicationDate) ?></li>
<li><label>Content</label>: <?= Html::encode($model->Content) ?></li>
<li><label>tags</label>: <?= Html::encode($model->tags) ?></li>
</ul>
заранее благодарю за потраченное время 🙂
Только безопасный атрибуты могут получать пользовательский ввод. Атрибут считается безопасный если для этого атрибута определен хотя бы один валидатор rules()
, Если вы просто хотите объявить атрибут безопасным без дальнейшей проверки, вы можете использовать «безопасный» валидатор, например:
public function rules()
{
return[
[['Title', 'Content'], 'required'],
[['PublicationDate', 'tags'], 'safe'],
];
}
Проверьте http://www.yiiframework.com/doc-2.0/guide-input-validation.html а также http://www.yiiframework.com/doc-2.0/guide-tutorial-core-validators.html для получения дополнительной информации.
Других решений пока нет …