При выведении новости на сайт, выдаёт ошибку Call to undefined method app\models\SystemNewsRecord::find()?

Приветствую, столкнулась думаю, что с пустяковой ошибкой, но не могу додуматься в чём может быть причиной. При выведении статьи на сайт, выдаёт:
Call to undefined method app\models\SystemNewsRecord::find()
1. in C:\Users\User\OSPanel\domains\medicalyii2\controllers\NewsController.php at line                               
 ],
            'captcha' => [
                'class' => 'yii\captcha\CaptchaAction',
                'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null,
            ],
        ];
    }
    public function actionIndex() {
        //return array => object
    	$model = SystemNewsRecord::find()->where(['hide' => 'show'])->orderBy(['put_date' => SORT_DESC])->all();
        return $this->render('index', [
            'model' => $model
        ]);
    }
    public function actionView()
    {
        $id_news = Yii::$app->request->get('id');
        //object
        $model = SystemNewsRecord::findOne($id_news);
                
2. yii\base\ErrorHandler::handleFatalError()


Вот мой контроллер, откуда и выдаёт данную ошибку:

public function actionIndex() {
        //return array => object
    	$model = SystemNewsRecord::find()->where(['hide' => 'show'])->orderBy(['put_date' => SORT_DESC])->all();
        return $this->render('index', [
            'model' => $model
        ]);
    }
    public function actionView()
    {
        $id_news = Yii::$app->request->get('id');
        //object
        $model = SystemNewsRecord::findOne($id_news);
        if (!$model)
            throw new NotFoundHttpException('Данная новость не найдена');
        return $this->render('view', [
        	'model' => $model
        ]);
    }


Вот модель:

public static function tableName()
    {
        return 'system_news';
    }

    /**
     * {@inheritdoc}
     */
    public function rules()
    {
        return [
            [['name', 'body', 'alt', 'img_small', 'img_big', 'put_date', 'hide'], 'required'],
            [['body', 'alt', 'img_small', 'img_big', 'hide'], 'string'],
            [['put_date'], 'safe'],
            [['name'], 'string', 'max' => 255],
        ];
    }

    /**
     * {@inheritdoc}
     */
    public function attributeLabels()
    {
        return [
            'id_news' => 'Id News',
            'name' => 'Name',
            'body' => 'Body',
            'alt' => 'Alt',
            'img_small' => 'Img Small',
            'img_big' => '',
            'put_date' => 'Put Date',
            'hide' => 'Hide',
        ];
    }


View:

<?php foreach ($model as $news): ?>

                        <div class="news-sec">
                            <?= Html::img('@web/files/news/'.$news->img_small, [
                                'alt' => $news->alt,
                                'title' => $news->alt,
                            ]) ?>
                            <div class="detail">
                                <span><?= $news->put_date ?></span>
                                <h3><?= Html::a($news->name, ['view', 'id' => $news->id_news]) ?></h3>

                                <p><?= StringHelper::truncateWords($news->body, 30) ?></p>

                                <?= Html::a('читать далее', [
                                    'view',
                                    'id' => $news->id_news
                                ], ['class' => 'read-more']) ?>
                            </div>
                        </div>

                        <?php endforeach; ?>
  • Вопрос задан
  • 673 просмотра
Пригласить эксперта
Ответы на вопрос 1
VladimirAndreev
@VladimirAndreev
php web dev
Так в модели нет метода find... Query для неё вообще есть?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы