Php 筛选yii2会在null上生成对成员函数isAttributeRequired()的错误调用
我在试着过滤yii2。it 3输入中有一个表单字段(type=“radio”),每个条目应搜索价格在此范围内的产品。以下是执行搜索的控制器代码:Php 筛选yii2会在null上生成对成员函数isAttributeRequired()的错误调用,php,filter,yii2,Php,Filter,Yii2,我在试着过滤yii2。it 3输入中有一个表单字段(type=“radio”),每个条目应搜索价格在此范围内的产品。以下是执行搜索的控制器代码: public function actionFilter() { $filter = trim(Yii::$app->request->get('filter')); $this->setMeta('MAC-SHOPPER | ' . $filter);
public function actionFilter()
{
$filter = trim(Yii::$app->request->get('filter'));
$this->setMeta('MAC-SHOPPER | ' . $filter);
if (!$filter) {
return $this->render('filter');
}
/*
if ($filter <= 15) {
$query = Product::find()->where(['<=', 'price', 15]);
}*/
$model = new Product();
if($Button1) {
$query = Product::find()->where(['between', 'price', "0", "50" ])->all();
}
$pages = new Pagination(['totalCount' => $query->count(), 'pageSize' => 2, 'forcePageParam' => false, 'pageSizeParam' => false]);
$products = $query->offset($pages->offset)->limit($pages->limit)->all();
return $this->render('filter', compact('products', 'pages', 'filter', 'model'));
}
公共函数actionFilter()
{
$filter=trim(Yii::$app->request->get('filter');
$this->setMeta('MAC-SHOPPER |'。$filter);
如果(!$filter){
返回$this->render('filter');
}
/*
如果($filter,其中(['form方法是在“post”中,您尝试通过get检索数据。
我会这样改变:
public function actionFilter()
{
$filter = trim(Yii::$app->request->post('filter'));
$this->setMeta('MAC-SHOPPER | ' . $filter);
if (!$filter) {
return $this->render('filter');
}
........
}
我不确定你是否能解决你的问题,但这是另一个问题
<?php $form = ActiveForm::begin([
'id' => 'task-form',
'action' => \yii\helpers\Url::to(['category/filter']),
]
)?>
<?= $form->field($model, 'radioButtonList')
->radioList([
'Button1' => 'от 0-1500',
'Button2' => 'от 3000-5000',
'Button3' => 'от 5000-20000'
],[
'id' => 'radio_button',
]); ?>
<?= Html::submitButton('Найти', ['class' => 'btn btn-success']);?>
<?php $form = ActiveForm::end() ?>
public function actionFilter()
{
$filter = trim(Yii::$app->request->post('filter'));
$this->setMeta('MAC-SHOPPER | ' . $filter);
if (!$filter) {
return $this->render('filter');
}
........
}