Opa, bom fim de semana,

Eu não entendi muito bem. A tabela IMAGE tem um campo chamado TIPO certo?
Esse tipo, presumo, seria uma lista conhecida de poucos itens?
Se for isso, por que não criar o campo TIPO usando o tipo de dados enum do
mysql?  O que eu não entendi é para que um segundo modelo além do modelo
IMAGE á que TIPO é atributo de IMAGE e não chave estrangeira de outro
modelo.

Manda mais detalhes para gente.

Abração e bom feriado,
Benito

2008/2/2 SiscoJ WEB <[EMAIL PROTECTED]>:

>
> Pessoal,
> estou começando a cair dentro do Cake, mas,
> estou com um problema justamente nessa parte.
>
> Tenho um modelo IMAGE q vai ter um atributo TIPO... esse TIPO
> normalmente vai aparecer nas views simplesmente como
> header de algumas colunas nas listagens... nao vejo necessidade de
> criar um enum ou uma table para esse TIPO...
>
> como posso criar um modelo sem tabela relacionada de formas q
> possa mostrar a descriçao desse tipo sempre que quiser e funcione
> similar a um enum?
>
> Alguma sugestao?
>
> att.
>
> Siscoj WEB
> On Feb 1, 1:45 pm, "Josenivaldo Benito Junior"
> <[EMAIL PROTECTED]> wrote:
> > Olá,
> >
> > Eu resolvi esse problema usando uma função no AppModel:
> >
> > * Get Enum Values
> >      * Snippet v0.1.3
> >      *http://cakeforge.org/snippet/detail.php?type=snippet&id=112
> >      *
> >      * Gets the enum values for MySQL 4 and 5 to use in selectTag()
> >      * Tested with PHP 4/5 and CakePHP 1.1.8
> >      */
> >     function getEnumValues($columnName=null)
> >     {
> >         if ($columnName==null) { return array(); } //no field specified
> >
> >         //Get the name of the table
> >         $db =& ConnectionManager::getDataSource($this->useDbConfig);
> >         $tableName = $db->fullTableName($this, false);
> >
> >         //Get the values for the specified column (database and
> > version specific, needs testing)
> >         $result = $this->query("SHOW COLUMNS FROM {$tableName} LIKE
> > '{$columnName}'");
> >
> >         //figure out where in the result our Types are (this varies
> > between mysql versions)
> >         $types = null;
> >         if     ( isset( $result[0]['COLUMNS']['Type'] ) ) { $types =
> > $result[0]['COLUMNS']['Type']; } //MySQL 5
> >         elseif ( isset( $result[0][0]['Type'] ) )         { $types =
> > $result[0][0]['Type'];         } //MySQL 4
> >         else   { return array(); } //types return not accounted for
> >
> >         //Get the values
> >         $values = explode("','",
> > preg_replace("/(enum)\('(.+?)'\)/","\\2", $types) );
> >
> >         //explode doesn't do assoc arrays, but cake needs an assoc to
> > assign values
> >         $assoc_values = array();
> >         foreach ( $values as $value ) {
> >             //leave the call to humanize if you want it to look pretty
> >             $assoc_values[$value] = Inflector::humanize($value);
> >         }
> >
> >         return $assoc_values;
> >
> >     } //end getEnumValues
> >
> > Como vc pode ver a solução não é minha, achei a sugestão na internet e
> > considerei uma alternativa boa já que tenho alguns campos enum ou SET
> nas
> > minhas tabelas.
> >
> > Abraço,
> > Benito.
> >
> > 2008/1/30 Fênix <[EMAIL PROTECTED]>:
> >
> >
> >
> > > Oi pessoal,
> >
> > > Estou com o seguinte problema.Tenho um campo da tabela que é estado
> > > civil, este campo é do tipo enum, esta da seguinte forma no banco:
> > > escivil enum('Solteiro(a)','Casado(a)',''Viuvo(a),'Separado(a)');
> >
> > > e um outro campo do tipo set, onde a pessoa informa se tem algum tipo
> > > de necessidade especial.
> > >  prt_nec set('fisica','visual,'auditiva');
> >
> > > ao utilizar o bake vi que ele não consegue gerar o formulário
> > > corretamente para esses campos.
> >
> > > gostaria de saber como utilizar o helper do html e o que deveria fazer
> > > para que os valores do banco fossem lidos. e passados corretamente.
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito no Grupo "Cake PHP Português" 
em Grupos do Google.
 Para postar neste grupo, envie um e-mail para [email protected]
 Para cancelar a sua inscrição neste grupo, envie um e-mail para [EMAIL 
PROTECTED]
 Para ver mais opções, visite este grupo em 
http://groups.google.com/group/cake-php-pt?hl=pt-BR
-~----------~----~----~----~------~----~------~--~---

Responder a