Ajuda com CRUD.. yii 2.0

88 views
Skip to first unread message

Janito Vieira

unread,
Nov 10, 2014, 8:49:57 AM11/10/14
to yii-framew...@googlegroups.com
Olá a todos!

Sou novo em usar o yii... Como o yii está em 2.0, decidi fazer o meu próximo projeto com ele, mas só que na hrora de gerar o CRUD este não funciona, ou seja consigo gerar o modelo, mas no momento em que estou tentando gerar o CRUD este apresenta o seguinte: (Class 'nome_da_minha tabela que nesse caso é: "Cliente"' does not exist or has syntax error.)  

Agradeço a ajuda!

Leonardo Antônio

unread,
Nov 10, 2014, 10:36:56 AM11/10/14
to yii-framew...@googlegroups.com
Ainda não testei o yii 2.0, mas como está o nome da sua tabela no banco de dados e no model? Talvez seja questão de maiúsculo, minúsculo, não sei. Tenta "cliente" com o "C" minúsculo.

--
YFB - Yii Framework Brasil
04/2011: Anexos de até 250kb foram autorizados pelos membros da lista. Use com moderação.
---
Você recebeu essa mensagem porque está inscrito no grupo "YFB - Yii Framework Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para yii-framework-br...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/yii-framework-brasil/c1a23399-ebaf-463b-b6be-f90f0c95f273%40googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Sidney

unread,
Nov 10, 2014, 5:23:27 PM11/10/14
to yii-framew...@googlegroups.com
Acredito que tenha a ver com namespaces, pois quando usei tive problemas com isso também, mas nao lembro agora o modo correto. Mas o yii não tá achando a classe Cliente. Ou você a gerou no lugar errado (sem usar o namespace certo) ou tá buscando no lugar errado na hora de gerar o crud dela. Tente trocar "Cliente" no campo model, por um endereço mais completo, tipo, App\Models\Cliente ou, se estiver no modo avançado (o que tem frontend, backend, etc) pode tentar alguma coisa como frontend\models\Cliente (ou backend, se for o caso). Pesquise algo nesse sentido que deve conseguir resolver seu problema.

Obs: não sei se as applicações feitas no modo basic têm essa exigência, mas as que fiz, no modo avançado, têm.

Atenciosamente,
Sidney Lins
------

Newerton Vargas de Araújo

unread,
Nov 10, 2014, 7:54:42 PM11/10/14
to yii-framew...@googlegroups.com
Janito,

No em Model Class, adiciona: app\models\Cliente
Search Model Class: app\models\search\ClienteSearch
Controller Class: app\modules\(seu modulo)\controllers\ClienteController

Como o Yii2 usa namespace, precisa colocar o caminho completo dos arquivos.

Janito Vieira

unread,
Nov 18, 2014, 5:14:15 AM11/18/14
to yii-framew...@googlegroups.com
Exactamente, solucionado!

Muito obrigado a todos! Foi um pouquinho falta de atenção!

Carlos Alexandre Zucolli

unread,
Jan 16, 2015, 3:01:25 PM1/16/15
to yii-framew...@googlegroups.com
Boa tarde,

Não consigo sair do erro do Class not Found...

Eu quero pegar todas or registros de um model assim: $oss = OsOrdens::find()->all();

Ele diz que não encontra a classe OsOrdens...

Meu Model:
<?php

namespace app\models;

use Yii;

/**
 * This is the model class for table "os_ordens".
 *
 * @property integer $id
 * @property string $apelido
 * @property integer $os_prefixos
 * @property integer $user_usuarios
 * @property string $criacao
 * @property string $validade_ini
 * @property string $validade_fim
 * @property string $prazo
 * @property integer $os_formatos
 * @property integer $paginas
 * @property integer $emails
 * @property string $observacoes
 * @property integer $cli_clientes
 * @property integer $cli_bandeiras
 * @property integer $cli_regionais
 * @property integer $graf_graficas
 * @property integer $os_estagios
 * @property integer $layout_aprovado
 * @property integer $aprovacao_interna
 * @property string $envio_grafica
 * @property integer $status_grafica
 * @property string $finalizacao
 * @property string $fechamento
 * @property integer $user_usuarios_final
 */
class OsOrdens extends \yii\db\ActiveRecord
{
    /**
     * @inheritdoc
     */
    public static function tableName()
    {
        return 'os_ordens';
    }

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['os_prefixos', 'user_usuarios', 'os_formatos', 'paginas', 'emails', 'cli_clientes', 'cli_bandeiras', 'cli_regionais', 'graf_graficas', 'os_estagios', 'layout_aprovado', 'aprovacao_interna', 'status_grafica', 'user_usuarios_final'], 'integer'],
            [['criacao', 'validade_ini', 'validade_fim', 'prazo', 'envio_grafica', 'finalizacao', 'fechamento'], 'safe'],
            [['observacoes'], 'string'],
            [['cli_clientes'], 'required'],
            [['apelido'], 'string', 'max' => 250]
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'apelido' => 'Apelido',
            'os_prefixos' => 'Os Prefixos',
            'user_usuarios' => 'User Usuarios',
            'criacao' => 'Criacao',
            'validade_ini' => 'Validade Ini',
            'validade_fim' => 'Validade Fim',
            'prazo' => 'Prazo',
            'os_formatos' => 'Os Formatos',
            'paginas' => 'Paginas',
            'emails' => 'Emails',
            'observacoes' => 'Observacoes',
            'cli_clientes' => 'Cli Clientes',
            'cli_bandeiras' => 'Cli Bandeiras',
            'cli_regionais' => 'Cli Regionais',
            'graf_graficas' => 'Graf Graficas',
            'os_estagios' => 'Os Estagios',
            'layout_aprovado' => 'Layout Aprovado',
            'aprovacao_interna' => 'Aprovacao Interna',
            'envio_grafica' => 'Envio Grafica',
            'status_grafica' => 'Status Grafica',
            'finalizacao' => 'Finalizacao',
            'fechamento' => 'Fechamento',
            'user_usuarios_final' => 'User Usuarios Final',
        ];
    }




}



O que está errado?

Leonardo Antônio

unread,
Jan 17, 2015, 11:46:56 AM1/17/15
to yii-framew...@googlegroups.com
Carlos, não fucei o yii2 ainda, mas será que não é algo relacionado a case-sensitive não cara?

--
YFB - Yii Framework Brasil
04/2011: Anexos de até 250kb foram autorizados pelos membros da lista. Use com moderação.
---
Você recebeu essa mensagem porque está inscrito no grupo "YFB - Yii Framework Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para yii-framework-br...@googlegroups.com.

Wilson Guimarães

unread,
Jan 17, 2015, 4:34:10 PM1/17/15
to yii-framew...@googlegroups.com
Namespace cara...

Coloque assim no topo da sua página

use common\models\OsOrdens

Wilson Guimarães

unread,
Jan 17, 2015, 4:36:14 PM1/17/15
to yii-framew...@googlegroups.com
ou $oss =  common\models\OsOrdens::find()->all();

Aí não precisa user o "use"

Carlos Alexandre Zucolli

unread,
Jan 19, 2015, 4:34:50 PM1/19/15
to yii-framew...@googlegroups.com
Boa noite Wilson,
Funcionou!

Eu realmente tinha esquecido de carregar.

Só funcionou assim: use app\models\OsOrdens;
Assim não funcionou: $oss = app\models\OsOrdens\OsOrdens::find()->all();

Muito obrigado pela ajuda.

Agora vou me aprofundar no restante.

Abraços.

ZUCOLLI


Em segunda-feira, 10 de novembro de 2014 11:49:57 UTC-2, Janito Vieira escreveu:

Wilson Guimarães

unread,
Jan 19, 2015, 6:00:02 PM1/19/15
to yii-framew...@googlegroups.com
Legal..Vamo que vamo

--
YFB - Yii Framework Brasil
04/2011: Anexos de até 250kb foram autorizados pelos membros da lista. Use com moderação.
---
Você recebeu essa mensagem porque está inscrito no grupo "YFB - Yii Framework Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para yii-framework-br...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages