yii错误活动记录查询

时间:2017-09-21 10:49:27

标签: database yii2

我正在尝试使用yii,我按照教程简单地创建一个鞋子数据库表的字段。 我创建索引视图

<?php
/* @var $this yii\web\View */
?>
<h1>articoli/index</h1>

<p>
   pippo

   <?php
   foreach($posts as $post){?>
       <h1><?php echo $post->autore; ?> </h1>
       <p><?php echo $post->articolo; ?></p>

   }
   ?>
</p>

在控制器中我创建了ArticoliController

<?php

namespace app\controllers;

class ArticoliController extends \yii\web\Controller
{
    public function actionIndex()
    {
        $posts=Articoli::model()->findall();
        $data['posts']=$posts;
        return $this->render('index',$data);
    }

    public function actionSaluta(){

        $vsa['messaggio']='Alessio';
        return $this->render('saluta',$vsa);
    }

}

在模特中我创造了Articoli .php

<?php

namespace app\models;

use Yii;

/**
 * This is the model class for table "articoli".
 *
 * @property integer $id
 * @property string $autore
 * @property string $articolo
 */
class Articoli extends \yii\db\ActiveRecord
{
    /**
     * @inheritdoc
     */
    public static function tableName()
    {
        return 'articoli';
    }

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['articolo'], 'required'],
            [['autore'], 'string', 'max' => 55],
            [['articolo'], 'string', 'max' => 255],
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'autore' => 'Autore',
            'articolo' => 'Articolo',
        ];
    }
}

当我尝试返回时

PHP Fatal Error – yii\base\ErrorException

Class 'app\controllers\Articoli' not found
我不明白。我认为必须去app \ models \ Articoli.php

我尝试不同的方式 $帖= Articoli :: - &GT;的findall();

但不起作用

1 个答案:

答案 0 :(得分:1)

Yii2 ActiveRecord没有静态函数model()。要从Articoli获取所有记录,您必须使用findAll()静态方法或find()->all()

将控制器中的使用情况更改为:

$posts = Articoli::findAll();

在您的控制器中添加use

use \app\models\Articoli;

或者只是改变这一行:

$posts=Articoli::model()->findall();

到此:

$posts = \app\models\Articoli::findAll();

就是这样! ;)