У меня есть проект yii2 и контроллер MyModelController.php там, где я хочу, чтобы получить модельyii2 получить модель контроллера
namespace app\controllers;
use yii\web\Controller;
use yii\db\Command;
class MyModelController extends Controller
{
public function actionPhoto()
{
$model=new myModel;
return $this->render('photo', ['model' => $model]);
}
}
и модель
MyModel.php:
use namespace app\models;
use yii\base\Model;
class MyModel extends ActiveRecord
{
public static function model($className=__CLASS__)
{
return parent::model($className);
}
public function tableName()
{
return 'my_model';
}
public function rules()
{
... some rules
}
public function relations()
{
return array(
);
}
//like fields in my table in mysql
public function attributeLabels()
{
return array(
'id' => 'ID',
'my_model_atribute' => 'MyModel',
);
}
public function search()
{
... some search
}
}
Они находятся в /basic/models
и /basic/controllers
соответственно.
И я получаю эту ошибку, когда я называю это, на мой взгляд:
Class 'app\controllers\MyModel' not found
UPD1 Я попытался сделать это в виду photo.php
use yii\helpers\Html;
$model=new MyModel;
var_dump($model);
И я до сих пор дает ошибку, что класс не найдено. UPD2 я изменить пространство имен для basic\models
и public_html\basic\models
, как это на самом деле, но он по-прежнему не находит класс там/
вы хотите использовать модель в контроллере ли? – Farshid
просто добавьте путь к вашей модели в контроллере. Предполагая, что это будет выглядеть как 'use app \ models \ MyModel;' –
вы правы. –