Php Yii:Framework-从$\u POST查找具有多个相关类别的表
我在控制器中使用此Yii代码来搜索帖子Php Yii:Framework-从$\u POST查找具有多个相关类别的表,php,mysql,database,yii,relationships,Php,Mysql,Database,Yii,Relationships,我在控制器中使用此Yii代码来搜索帖子 $model = Questions::model()->with( array( 'categories' => array ( 'select' => 'name', 'condition' => 'categories.id=:cat_id', 'params' => array (':cat_id' => $_POST["Questions"]["categor
$model = Questions::model()->with(
array(
'categories' => array (
'select' => 'name',
'condition' => 'categories.id=:cat_id',
'params' => array (':cat_id' => $_POST["Questions"]["categories"])
),
'countries' => array (
'select' => 'name',
'condition' => 'countries.id=:cou_id',
'params' => array (':cou_id' => $_POST["Questions"]["countries"])
)
)
)->findAll(array('select' => 'question'));
在POST中的所有数据都不是数组之前,这是正常的
我想更改POST以返回数组。现在,当我以数组形式从查看$_POST['Questions']['categories']返回时,我如何编写Questions::model的条件
我收到通知:
Array to string conversion: this->_statement->bindValue($name, $value, $this->_connection->getPdoType(gettype($value)));
那么,什么是正确的方法呢
-该视图中的帖子代码
CHtml::activeCheckboxList($model, 'countries'CHtml::listData(Countries::model()->findAll(), 'id', 'name'), array('template'=>'<li>{input} {label}</li>',));
$form->dropDownList($model, 'categories',
CHtml::listData(Categories::model()->findAll(), 'id', 'name'),
array('prompt' => 'Select category')
);
如果你需要更多信息,还有我以前的帖子,这是一个延续好吧,我不太擅长加入,但我会尝试以下方式:
$model = Questions::model()->with(
array(
'categories' => array (
'select' => 'name',
),
'countries' => array (
'select' => 'name',
'condition' => 'countries.id=:cou_id',
'params' => array (':cou_id' => $_POST["Questions"]["countries"])
)
)
)->findAllByAttributes(
array('categories.id' => $_POST["Questions"]["categories"]),
array('select' => 'question'));
虽然我认为这不会返回您想要的内容。您可以发布发布值的代码吗?是的,我只是编辑了代码。希望就是你的意思。基本上是非常简单的一个类别,现在是一个数组从多个复选框。