从 table 获取数据并将其显示在 yii 2.0 中的 gridview
fetch the data from table and display it the gridview in yii 2.0
我有一个控制器,我编写了一个函数来从 table 获取值。我将它传递给数据提供者。
public function actionBorrower()
{
$user = User::find()->all();
$dataProvider= new ActiveDataProvider([
'user' => $user,
'pagination' => false,
]);
return $this->render('borrower', [
'dataProvider'=>$dataProvider]);
}
现在在视图文件中,我想在网格视图中显示它,数据库中的 table 有很多用户,我想将它们全部获取并一一显示。
<?php
use yii\helpers\Html;
use yii\grid\GridView;
$this->title = 'Users';
$this->params['breadcrumbs'][] = $this->title;
?>
<section style="margin-top:60px;display:inline-block;height:640px;width:100%;padding:15px 0 0 15px;" class="wrapper">
<div class="user-role-index">
<h1><?= Html::encode($this->title) ?></h1>
<?= GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
'id',
'user_id',
//'role_id',
['class' => 'yii\grid\ActionColumn'],
],
]); ?>
</div>
</section>
我不知道我哪里出错了,但是出现了一些错误,比如 - 设置未知 属性: yii\data\ActiveDataProvider::user
我是 yii2 的新手,请任何人帮助我解决这个问题..谢谢。
我想从 USER Table 获取所有数据,其中 user_type 是 USER_TYPE Table 中的“1”。两个 tables 参与其中。我如何在上面写这个查询??
您应该将您的定义 activedataprovider 更改为:
$dataProvider= new ActiveDataProvider([
'query' => User::find(),
'pagination' => false,
]);
或者如果你想在创建数据提供者之前获得所有user
,你应该使用ArrayDataProvider
$provider = new ArrayDataProvider([
'allModels' => User::find()->all(),
'pagination' => false,
]);
参考文档:http://www.yiiframework.com/doc-2.0/yii-data-activedataprovider.html and http://www.yiiframework.com/doc-2.0/yii-data-arraydataprovider.html
祝你好运,玩得开心!
我有一个控制器,我编写了一个函数来从 table 获取值。我将它传递给数据提供者。
public function actionBorrower()
{
$user = User::find()->all();
$dataProvider= new ActiveDataProvider([
'user' => $user,
'pagination' => false,
]);
return $this->render('borrower', [
'dataProvider'=>$dataProvider]);
}
现在在视图文件中,我想在网格视图中显示它,数据库中的 table 有很多用户,我想将它们全部获取并一一显示。
<?php
use yii\helpers\Html;
use yii\grid\GridView;
$this->title = 'Users';
$this->params['breadcrumbs'][] = $this->title;
?>
<section style="margin-top:60px;display:inline-block;height:640px;width:100%;padding:15px 0 0 15px;" class="wrapper">
<div class="user-role-index">
<h1><?= Html::encode($this->title) ?></h1>
<?= GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
'id',
'user_id',
//'role_id',
['class' => 'yii\grid\ActionColumn'],
],
]); ?>
</div>
</section>
我不知道我哪里出错了,但是出现了一些错误,比如 - 设置未知 属性: yii\data\ActiveDataProvider::user
我是 yii2 的新手,请任何人帮助我解决这个问题..谢谢。
我想从 USER Table 获取所有数据,其中 user_type 是 USER_TYPE Table 中的“1”。两个 tables 参与其中。我如何在上面写这个查询??
您应该将您的定义 activedataprovider 更改为:
$dataProvider= new ActiveDataProvider([
'query' => User::find(),
'pagination' => false,
]);
或者如果你想在创建数据提供者之前获得所有user
,你应该使用ArrayDataProvider
$provider = new ArrayDataProvider([
'allModels' => User::find()->all(),
'pagination' => false,
]);
参考文档:http://www.yiiframework.com/doc-2.0/yii-data-activedataprovider.html and http://www.yiiframework.com/doc-2.0/yii-data-arraydataprovider.html
祝你好运,玩得开心!