Pelo o número de meus posts da para perceber que sou novo por aqui .
Vamos la!
Estas são minhas tabelas :
create table IF NOT EXISTS cadastro (
id int not null primary key auto_increment,
descricao varchar(50) not null
);
create table IF NOT EXISTS situacao (
id int not null primary key auto_increment,
descricao varchar(50) not null
);
create table IF NOT EXISTS cadastro_situacao (
id int not null primary key auto_increment,
cadastro_id int not null,
situacao_id int not null,
foreign key (cadastro_id) references cadastro (id),
foreign key (situacao_id) references situacao (id)
);
create table IF NOT EXISTS empresa (
id int not null primary key auto_increment,
razao_social varchar(100) not null,
cnpj varchar(14) not null unique,
telefone varchar(14),
email varchar(100),
cadastro_situacao_id int not null,
foreign key (cadastro_situacao_id) references cadastro_situacao (id)
);
Para cada cadastro tera suas situações, ex: empresa->[ativo, inativo], patrimonio->[em uso, manutençao]
Oque eu quero é na visualizão das empresas na view empresa/admin.php, ao invés de apresentar o id do cadastroSituacao, apresentar a descricao da situacao.
Oque já tentei:
public function search()
{
$criteria=new CDbCriteria;
$criteria->compare('t.id',$this->id);
$criteria->compare('razao_social',$this->razao_social,true);
$criteria->compare('cnpj',$this->cnpj,true);
$criteria->compare('telefone',$this->telefone,true);
$criteria->compare('email',$this->email,true);
//$criteria->compare('cadastro_situacao_id',$this->cadastro_situacao_id);
$criteria->compare('cadastroSituacao.situacao.descricao',$this->cadastroSituacao->situacao->id, true);
$criteria->with=array('cadastroSituacao');
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
));
}
O erro ocorre nesta linha:
$criteria->compare('cadastroSituacao.situacao.descricao',$this->cadastroSituacao->situacao->id, true);
O erro:
Trying to get property of non-object
Alguem poderia me ajudar?