Olá… Sou iniciante no Yii e estou com um problema… criei uma tabela no db chamada ‘cliente’…
Criei um model, um controller e uma pasta cliente dentro da pasta views… e dentro desta pasta coloquei somente um arquivo index.php (que irá listar todos os clientes). (codigo abaixo)
O problema é que quando vou na url yii-master/app/cliente - ele dá o erro:
(Acesso dessa forma pois no .htaccess adicionei para esconder o index.php)
Error 500
require(): Filename cannot be empty
- Obs: Eu configurei a aplicação p/ utilizar um outro tema… mas não criei a pasta cliente dentro da pasta themes… criei na views:
cliente/
site/
O que é preciso fazer para reconhecer que o arquivo index.php está dentro da pasta cliente e não na raiz da pasta views?
- Quando eu gero via Gii funciona normalmente.
Segue abaixo os códigos
Model:
<?php
class Cliente extends CActiveRecord {
public static function model($className = __CLASS__){
return parent::model($className);
}
public function tableName(){
return 'cliente';
}
public function rules(){
return array(
array('nome', 'required'),
array('nome', 'length', 'max'=>100),
);
}
public function attributeLabels(){
return array(
'nome'=> 'Nome',
);
}
public function search(){
$criteria = new CDbCriteria;
$criteria->compare('nome', $this->nome, true);
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
));
}
}
Controller
<?php
class ClienteController extends Controller{
public $layout='//layouts/column2';
public function actionIndex()
{
$dataProvider=new CActiveDataProvider('Cliente');
#var_dump($dataProvider);exit;
$this->render('index',array(
'dataProvider'=>$dataProvider,
));
}
}
cliente/index.php
<?php
/* @var $this UsuarioController */
/* @var $dataProvider CActiveDataProvider */
$this->breadcrumbs=array(
'Clientes',
);
$this->menu=array(
array('label'=>'Create Cliente', 'url'=>array('create')),
array('label'=>'Manage Cliente', 'url'=>array('admin')),
);
?>
<h1>Clientes</h1>
<?php $this->widget(‘zii.widgets.CListView’, array(
'dataProvider'=>$dataProvider,
'itemView'=>'_view',
)); ?>
Obrigado…