Новое в Yii2 и изучите некоторые примеры из учебников, попробуйте скопировать код и использовать его на моей собственной демонстрационной версии, но, похоже, не работают. Вот код:Новичок - Yii2: Невозможно отобразить данные на контроллере
учебник - Контроллер:
namespace app\controllers;
use yii\web\Controller;
use app\models\Article;
use Yii;
class ArticleController extends Controller{
public function actionIndex(){
$article = Article::find();
//echo $article->count();
$pagination = new \yii\data\Pagination(['totalCount'=>$article->count(), 'pageSize'=>3]);
$data = $article->offset($pagination->offset)->limit($pagination->limit)->all();
//print_r($data);
return $this->render('index',['data' => $data, 'pagination' => $pagination]);
}
учебник - Вид:
<?php
use yii\helpers\Url;
?>
<p style = "text-align:right">
<a href="<?=Url::to(['add'])?>" class="btn btn-primary">ADD</a>
</p>
<table class="table table-hover">
<tr>
<th>id</th><th>Title</th><th>Count</th><th>Status</th><th>Update Time</th><th>By</th>
</tr>
<?php print_r($data); foreach($data as $v){?>
<tr>
<td><?=$v->id?></td><td><?=$v->title?></td><td><?=$v->count?></td><td><?=($v->status == '1' ? 'Y' :'N')?></td>
<td><?=date("Y-m-d H:i:s",$v->update_date)?></td>
<td><a href="<?=Url::to(['edit', 'id'=>$v->id])?>">Edit</a> | <a href="<?=Url::to(['delete','id'=>$v->id])?>">Del</a></td>
</tr>
<?php }?>
</table>
<div style="float:right">
<?=\yii\widgets\LinkPager::widget([
'pagination' => $pagination,
'options' =>[
'class' =>'pagination',
],
])
?>
</div>
Использование print_r ($ данных), и это показывает ниже:
Array ([0] => app\models\Article Object ([_attributes:yii\db\BaseActiveRecord:private] => Array ([id] => 1 [flag] => 0 [title] => 13123OOOO [description] => tttt1 [content] => tstsets
[count] => 1 [status] => 1 [update_date] => 1462291610 [date] => 0) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ([id] => 1 [flag] => 0 [title] => 13123OOOO
[description] => tttt1 [content] => tstsets [count] => 1 [status] => 1 [update_date] => 1462291610 [date] => 0) [_related:yii\db\BaseActiveRecord:private] => Array ()
[_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ()
[_behaviors:yii\base\Component:private] => Array ())
Но на мой собственный код: Контроллер:
namespace app\controllers;
use yii\web\Controller;
use app\models\Inventory;
class InventoryController extends Controller{
public function actionIndex(){
//$inventory = new Inventory();
$inventory = Inventory::find()->asArray()->all();
print_r($inventory);
return $this->renderpartial('index',['inventory' => $inventory]);
}
Вид:
<?php
use yii\helpers\Html;
use yii\helpers\Url;
echo "<br>";
print_r($inventory);
?>
<h2>Inventory Status</h2>
<table class = "table table-hover">
<tr>
<th>ID</th><th>Model</th><th>Office</th><th>Warehouse</th>
</tr>
<tr>
<?php foreach($inventory as $item){ ?>
<tr>
<td><?=$item->id ?></td><td><?=$item->name ?></td><td><?=$item->office ?></td><td><?=$item->warehouse ?></td>
</tr>
<?php }?>
</tr>
<tr>
<td>?<td>Apple</td><td>1</td><td>2</td>
</tr>
</table>
Мой print_r ($ инвентарный), как это:
Array ([0] => Array ([id] => 1 [name] => Apple [office] => 1 [warehouse] => 2) [1] => Array ([id] => 2 [name] => Android [office] => 2 [warehouse] => 1))
И использовать Еогеасп() {}, но не может показать какие-либо данные, как исправить это?
Перед открыть горячую воду или изобретать Weel другой раз я предлагаю вам использования Gii для генерации кода по умолчанию Crud MVC и увидеть результат. .выбывая так много работы http://www.yiiframework.com/doc-2.0/guide-start-gii.html – scaisEdge
Я хочу использовать foreach() вместо использования Gridview на моей демонстрационной версии, из самого понятного, что я узнали, что Gii использует множество встроенных виджетах, которые пока не я предпочитаю. – newbrant
вы получаете данные 'asArray()' и получаете их как объект ('$ item-> id')! попробуйте удалить часть '-> asArray()' из контроллера. если это не работает, укажите сообщение об ошибке, которое вы задаете. – leninhasda