[CodeIgniter] Modelagem dos Models
Marcus Cavalcanti
marcus.cavalcanti em gmail.com
Quinta Novembro 1 12:10:58 BRST 2007
isso! dentro da sua classe de modelo, so para poder fazer os beans sacou?
faz ela estatica tb, pra vc nao precisa instanciar toda hora ..
On Nov 1, 2007 11:00 AM, Luciano Soares <lussterl em gmail.com> wrote:
> O que vc quiz dizer com a tática da inner class seria criar uma classe
> que representaria seu modelo, mas sem extender o modelo?
>
> Em 01/11/07, Marcus Cavalcanti <marcus.cavalcanti em gmail.com> escreveu:
>
> > Sim, pode ser dessa forma, usando stdclass.
> >
> > No meu caso eu uso diretamente a herança, mas concordo com vc quanto a
> > sobrecarregar memória. Mas como as aplicações que eu fiz não são critícas,
> > isso não afeta nada. Acho a solução da inner class mais elegante do que a
> > stdclass.
> >
> > []s
> >
> > MC
> >
> >
> > On Nov 1, 2007 8:14 AM, Luciano Soares < lussterl em gmail.com> wrote:
> >
> > > Marcus, ao invés de ficar criando vários objetos, com eu já carreguei
> > > o modelo no CI, eu utilizo somente uma instancia dele, faço os meus gets e
> > > sets encima dele num loop e o retorno eu guardo num array de objetos da
> > > classe stdClass. Assim economizo memória.
> > >
> > > Em 31/10/07, Marcus Cavalcanti < marcus.cavalcanti em gmail.com>
> > > escreveu:
> > >
> > > > Mais isso vc vai ter com qualquer classe que vc extender do CI, pois
> > > > todas vão extender a classe pai do CI.
> > > >
> > > > O que você pode fazer é criar uma innerclass com as propriedades e
> > > > metodos staticos do modelo em questão e gravar os valores nessa classe e no
> > > > array de beans do retorno da função do modelo, vc vai gravar o bean dessa
> > > > inner class.
> > > >
> > > > []s
> > > >
> > > > On Oct 31, 2007 2:18 PM, Luciano Soares < lussterl em gmail.com> wrote:
> > > >
> > > > > Marcus eu estava seguido seu exemplo (abaixo) de instanciar um
> > > > > novo objeto do modelo na minha função, só que dei um print_r num objeto
> > > > > desse, e vi que não é muito legal ficar criando esses objetos assim não.
> > > > > Pois um objeto de modelo armazena todas as informações do core do Code
> > > > > Igniter por default.
> > > > >
> > > > > Então se por exemplo vc cria 50, vai sobrecarregar bastante sua
> > > > > memória.
> > > > >
> > > > > function getGalleryEvents () {
> > > > > $this->db->where(" galeria.status_publicada", 1);
> > > > > $this->db->groupby("galeria.id_evento");
> > > > > $this->db->join("evento", "evento.id_evento =
> > > > > galeria.id_evento");
> > > > > $this->db->orderby(' evento.data_inicio desc');
> > > > > $this->db->limit(14,0);
> > > > > $query = $this->db->get("galeria");
> > > > >
> > > > > if ($query->num_rows() > 0) {
> > > > > foreach ($query->result() as $row) {
> > > > >
> > > > > $obj = new Gallery_Model();
> > > > > $obj->setIdGallery($row->id_galeria);
> > > > > $obj->setIdEvent($row->id_evento);
> > > > > $obj->setPhoto($row->caminho_arquivo);
> > > > > $obj->setDtPublish($row->data_cadastro);
> > > > > $obj->setType($row->tipo);
> > > > >
> > > > > $obj->setPhotoStatus($row->status_publicada);
> > > > > $arr[] = $obj;
> > > > > }
> > > > >
> > > > > return $arr;
> > > > > } else {
> > > > > return false;
> > > > > }
> > > > > }
> > > > >
> > > > >
> > > > > Em 30/10/07, Marcus Cavalcanti <marcus.cavalcanti em gmail.com>
> > > > > escreveu:
> > > > > >
> > > > > > É mas são coisas distintas..
> > > > > >
> > > > > > --
> > > > > > *Marcus Cavalcanti*
> > > > > > marcusc em myfreecomm.com.br
> > > > > > +55 (21) 2106-9700
> > > > > > <http://www.myfreecomm.com.br>
> > > > > > ------------------------------
> > > > > > "Esta mensagem pode conter informações confidenciais,
> > > > > > particulares ou privilegiadas. O uso dessas informações por pessoas não
> > > > > > autorizadas está sujeito às penas da lei."
> > > > > > "This message may contain confidential, proprietary or legally
> > > > > > privileged information. The misuse of the information contained herein by
> > > > > > non authorized people is subject to legal penalties."
> > > > > >
> > > > > > On 10/30/07, Luciano Soares <lussterl em gmail.com> wrote:
> > > > > > >
> > > > > > > Eu estou querendo implementar DAO. Pra isso to querendo usar
> > > > > > > a Active Record.
> > > > > > >
> > > > > > > Em 30/10/07, Daniel Costa < danielcosta em gmail.com > escreveu:
> > > > > > > >
> > > > > > > > Por sinal bem bacana a solução desse cara.
> > > > > > > > Alguém conhece outros exemplos?
> > > > > > > >
> > > > > > > > Em 30/10/07, Marcus Cavalcanti < marcus.cavalcanti em gmail.com>
> > > > > > > > escreveu:
> > > > > > > > >
> > > > > > > > > Complementando: pro que vc quer fazer, é melhor usar o
> > > > > > > > > conceito de ORM.
> > > > > > > > > http://codeigniter.com/forums/viewthread/51495/
> > > > > > > > >
> > > > > > > > > []s
> > > > > > > > >
> > > > > > > > > --
> > > > > > > > > *Marcus Cavalcanti*
> > > > > > > > > marcusc em myfreecomm.com.br
> > > > > > > > > +55 (21) 2106-9700
> > > > > > > > > <http://www.myfreecomm.com.br>
> > > > > > > > > ------------------------------
> > > > > > > > > "Esta mensagem pode conter informações confidenciais,
> > > > > > > > > particulares ou privilegiadas. O uso dessas informações por pessoas não
> > > > > > > > > autorizadas está sujeito às penas da lei."
> > > > > > > > > "This message may contain confidential, proprietary or
> > > > > > > > > legally privileged information. The misuse of the information contained
> > > > > > > > > herein by non authorized people is subject to legal penalties."
> > > > > > > > >
> > > > > > > > > On 10/30/07, Marcus Cavalcanti <marcus.cavalcanti em gmail.com>
> > > > > > > > > wrote:
> > > > > > > > > >
> > > > > > > > > > Luciano, o pattern ActiveRecord implementa o
> > > > > > > > > > relacionamento uma tabela = um modelo, logo, vc não pode ter multiplos
> > > > > > > > > > objetos no mesmo modelo.
> > > > > > > > > >
> > > > > > > > > > Mas vc pode até fazer isso, mas não seria uma boa
> > > > > > > > > > prática.
> > > > > > > > > >
> > > > > > > > > > --
> > > > > > > > > > *Marcus Cavalcanti*
> > > > > > > > > > marcusc em myfreecomm.com.br
> > > > > > > > > > +55 (21) 2106-9700
> > > > > > > > > > <http://www.myfreecomm.com.br>
> > > > > > > > > > ------------------------------
> > > > > > > > > > "Esta mensagem pode conter informações confidenciais,
> > > > > > > > > > particulares ou privilegiadas. O uso dessas informações por pessoas não
> > > > > > > > > > autorizadas está sujeito às penas da lei."
> > > > > > > > > > "This message may contain confidential, proprietary or
> > > > > > > > > > legally privileged information. The misuse of the information contained
> > > > > > > > > > herein by non authorized people is subject to legal penalties."
> > > > > > > > > >
> > > > > > > > > > On 10/30/07, Luciano Soares < lussterl em gmail.com> wrote:
> > > > > > > > > > >
> > > > > > > > > > > Marcus, como vc faz join com esse tipo de modelagem
> > > > > > > > > > > de modelos?
> > > > > > > > > > >
> > > > > > > > > > > Ou vc não faz consultas com join? Faz apenas
> > > > > > > > > > > consultas simples e retorna nos objetos?
> > > > > > > > > > >
> > > > > > > > > > > 2007/10/25, Marcus Cavalcanti <
> > > > > > > > > > > marcus.cavalcanti em gmail.com>:
> > > > > > > > > > > >
> > > > > > > > > > > > Postar um exemplo de modelo meu, para voce usar,
> > > > > > > > > > > > CASO goste e queira SE basear..
> > > > > > > > > > > >
> > > > > > > > > > > > <?php
> > > > > > > > > > > >
> > > > > > > > > > > > class Gallery_Model extends Model {
> > > > > > > > > > > >
> > > > > > > > > > > > var $idGallery;
> > > > > > > > > > > > var $idEvent;
> > > > > > > > > > > > var $photo;
> > > > > > > > > > > > var $dtPublish;
> > > > > > > > > > > > var $type;
> > > > > > > > > > > > var $photoStatus;
> > > > > > > > > > > > var $caption;
> > > > > > > > > > > > var $notable;
> > > > > > > > > > > >
> > > > > > > > > > > > function Gallery_Model()
> > > > > > > > > > > > {
> > > > > > > > > > > > parent::Model();
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getIdGallery () {
> > > > > > > > > > > > return $this->idGallery;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function setIdGallery ($idGallery) {
> > > > > > > > > > > > $this->idGallery = $idGallery;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getIdEvent () {
> > > > > > > > > > > > return $this->idEvent;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function setIdEvent ($idEvent) {
> > > > > > > > > > > > $this->idEvent = $idEvent;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getPhoto () {
> > > > > > > > > > > > return $this->photo;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function setPhoto ($photo) {
> > > > > > > > > > > > $this->photo = $photo;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getDtPublish () {
> > > > > > > > > > > > return $this->dtPublish;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function setDtPublish ($dtPublish) {
> > > > > > > > > > > > $this->dtPublish = $dtPublish;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getType () {
> > > > > > > > > > > > return $this->type;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function setType ($type) {
> > > > > > > > > > > > $this->type = $type;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getPhotoStatus () {
> > > > > > > > > > > > return $this->photoStatus;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function setPhotoStatus ($photoStatus) {
> > > > > > > > > > > > $this->photoStatus = $photoStatus;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getCaption () {
> > > > > > > > > > > > return $this->caption;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function setCaption ($caption) {
> > > > > > > > > > > > $this->caption = $caption;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getNotable () {
> > > > > > > > > > > > return $this->notable;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function setNotable ($notable) {
> > > > > > > > > > > > $this->notable = $notable;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getGalleryEvents () {
> > > > > > > > > > > > $this->db->where("
> > > > > > > > > > > > galeria.status_publicada", 1);
> > > > > > > > > > > > $this->db->groupby("galeria.id_evento");
> > > > > > > > > > > > $this->db->join("evento", "
> > > > > > > > > > > > evento.id_evento = galeria.id_evento");
> > > > > > > > > > > > $this->db->orderby(' evento.data_iniciodesc');
> > > > > > > > > > > > $this->db->limit(14,0);
> > > > > > > > > > > > $query = $this->db->get("galeria");
> > > > > > > > > > > >
> > > > > > > > > > > > if ($query->num_rows() > 0) {
> > > > > > > > > > > >
> > > > > > > > > > > > foreach ($query->result() as $row)
> > > > > > > > > > > > {
> > > > > > > > > > > > $obj = new Gallery_Model();
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setIdGallery($row->id_galeria);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setIdEvent($row->id_evento);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setPhoto($row->caminho_arquivo);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setDtPublish($row->data_cadastro);
> > > > > > > > > > > > $obj->setType($row->tipo);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setPhotoStatus($row->status_publicada);
> > > > > > > > > > > > $arr[] = $obj;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > return $arr;
> > > > > > > > > > > > } else {
> > > > > > > > > > > > return false;
> > > > > > > > > > > > }
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getPhotosByEvent ($idEvent, $status
> > > > > > > > > > > > = 1) {
> > > > > > > > > > > > $query = $this->db->getwhere('galeria',
> > > > > > > > > > > > array('id_evento' =>$idEvent, 'status_publicada' => $status));
> > > > > > > > > > > >
> > > > > > > > > > > > if ($query->num_rows() > 0) {
> > > > > > > > > > > >
> > > > > > > > > > > > foreach ($query->result() as $row)
> > > > > > > > > > > > {
> > > > > > > > > > > > $obj = new Gallery_Model();
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setIdGallery($row->id_galeria);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setIdEvent($row->id_evento);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setPhoto($row->caminho_arquivo);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setDtPublish($row->data_cadastro);
> > > > > > > > > > > > $obj->setType($row->tipo);
> > > > > > > > > > > > $obj->setCaption($row->legenda);
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setPhotoStatus($row->status_publicada);
> > > > > > > > > > > > $arr[] = $obj;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > return $arr;
> > > > > > > > > > > > } else {
> > > > > > > > > > > > return false;
> > > > > > > > > > > > }
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getNotablePhotos ($status = 1,
> > > > > > > > > > > > $idEvent = false, $limit = false) {
> > > > > > > > > > > > if ($idEvent) {
> > > > > > > > > > > > $this->db->where("destaque", 1);
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > if ($limit) {
> > > > > > > > > > > > $query =
> > > > > > > > > > > > $this->db->getwhere('galeria', array('status_publicada' => $status,
> > > > > > > > > > > > 'destaque' => 1), $limit, 0);
> > > > > > > > > > > > } else {
> > > > > > > > > > > > $query =
> > > > > > > > > > > > $this->db->getwhere('galeria', array('status_publicada' => $status,
> > > > > > > > > > > > 'destaque' => 1));
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > if ($query->num_rows() > 0) {
> > > > > > > > > > > > foreach ($query->result() as $row) {
> > > > > > > > > > > > $obj = new Gallery_Model();
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setIdGallery($row->id_galeria);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setIdEvent($row->id_evento);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setPhoto($row->caminho_arquivo);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setDtPublish($row->data_cadastro);
> > > > > > > > > > > > $obj->setType($row->tipo);
> > > > > > > > > > > > $obj->setCaption($row->legenda);
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setPhotoStatus($row->status_publicada);
> > > > > > > > > > > > $arr[] = $obj;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > return $arr;
> > > > > > > > > > > > } else {
> > > > > > > > > > > > return false;
> > > > > > > > > > > > }
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getLastId () {
> > > > > > > > > > > > $query = $this->db->query('SELECT
> > > > > > > > > > > > MAX(id_galeria) AS maxID FROM galeria');
> > > > > > > > > > > >
> > > > > > > > > > > > if ($query->num_rows() > 0) {
> > > > > > > > > > > > $row = $query->row();
> > > > > > > > > > > > return $row->maxID;
> > > > > > > > > > > > } else {
> > > > > > > > > > > > return false;
> > > > > > > > > > > > }
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function getPhotoById ($idPhoto) {
> > > > > > > > > > > > $query = $this->db->getwhere('galeria',
> > > > > > > > > > > > array('id_galeria' =>$idPhoto));
> > > > > > > > > > > >
> > > > > > > > > > > > if ($query->num_rows() > 0) {
> > > > > > > > > > > > foreach ($query->result() as $row) {
> > > > > > > > > > > > $obj = new Gallery_Model();
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setIdGallery($row->id_galeria);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setIdEvent($row->id_evento);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setPhoto($row->caminho_arquivo);
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setDtPublish($row->data_cadastro);
> > > > > > > > > > > > $obj->setType($row->tipo);
> > > > > > > > > > > > $obj->setCaption($row->legenda);
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > $obj->setPhotoStatus($row->status_publicada);
> > > > > > > > > > > > $arr[] = $obj;
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > return $arr;
> > > > > > > > > > > > } else {
> > > > > > > > > > > > return false;
> > > > > > > > > > > > }
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function insert () {
> > > > > > > > > > > > $data = array(
> > > > > > > > > > > > 'id_evento' =>
> > > > > > > > > > > > $this->getIdEvent(),
> > > > > > > > > > > > 'caminho_arquivo' =>
> > > > > > > > > > > > $this->getPhoto(),
> > > > > > > > > > > > 'data_cadastro' =>
> > > > > > > > > > > > $this->dtPublish,
> > > > > > > > > > > > 'tipo' =>
> > > > > > > > > > > > $this->getType(),
> > > > > > > > > > > > 'legenda' =>
> > > > > > > > > > > > $this->getCaption(),
> > > > > > > > > > > > 'status_publicada' =>
> > > > > > > > > > > > $this->getPhotoStatus(),
> > > > > > > > > > > > 'destaque' =>
> > > > > > > > > > > > $this->getNotable()
> > > > > > > > > > > > );
> > > > > > > > > > > >
> > > > > > > > > > > > $this->db->insert('galeria', $data);
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > function delete () {
> > > > > > > > > > > > $data = array(
> > > > > > > > > > > > 'id_evento' =>
> > > > > > > > > > > > $this->getIdEvent() ,
> > > > > > > > > > > > 'id_galeria' => $this->getIdGallery()
> > > > > > > > > > > >
> > > > > > > > > > > > );
> > > > > > > > > > > >
> > > > > > > > > > > > $this->db->delete('galeria', $data);
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > }
> > > > > > > > > > > >
> > > > > > > > > > > > ?>
> > > > > > > > > > > >
> > > > > > > > > > > > --
> > > > > > > > > > > > *Marcus Cavalcanti*
> > > > > > > > > > > > marcusc em myfreecomm.com.br
> > > > > > > > > > > > +55 (21) 2106-9700
> > > > > > > > > > > > <http://www.myfreecomm.com.br>
> > > > > > > > > > > > ------------------------------
> > > > > > > > > > > > "Esta mensagem pode conter informações
> > > > > > > > > > > > confidenciais, particulares ou privilegiadas. O uso dessas informações por
> > > > > > > > > > > > pessoas não autorizadas está sujeito às penas da lei."
> > > > > > > > > > > > "This message may contain confidential, proprietary
> > > > > > > > > > > > or legally privileged information. The misuse of the information contained
> > > > > > > > > > > > herein by non authorized people is subject to legal penalties."
> > > > > > > > > > > >
> > > > > > > > > > > > On 10/25/07, Edinho Almeida <edinhoalmeida em gmail.com
> > > > > > > > > > > > > wrote:
> > > > > > > > > > > > >
> > > > > > > > > > > > > Eu faço assim.
> > > > > > > > > > > > > Mas também tem métodos específicos para set
> > > > > > > > > > > > > function publica($post_id,$flag=1){
> > > > > > > > > > > > > $data = array('publica'=>$flag);
> > > > > > > > > > > > > $this->db->where('post_id', $post_id);
> > > > > > > > > > > > > $this->db->update('posts', $data);
> > > > > > > > > > > > > }
> > > > > > > > > > > > >
> > > > > > > > > > > > > On 10/25/07, Luciano Soares < lussterl em gmail.com>
> > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > >
> > > > > > > > > > > > > > Então vc não faz um get e set para cada
> > > > > > > > > > > > > > atributo da sua classe? Vc joga as informações, provenientes de um
> > > > > > > > > > > > > > formulário, depois se validadas num array (ou objeto generico) e depois
> > > > > > > > > > > > > > chama um funcao tipo:
> > > > > > > > > > > > > >
> > > > > > > > > > > > > > function save($arr){
> > > > > > > > > > > > > > $this->db->insert($arr);
> > > > > > > > > > > > > > return $this->db->insert_id();
> > > > > > > > > > > > > > }
> > > > > > > > > > > > > >
> > > > > > > > > > > > > > Algo mais ou menos assim?
> > > > > > > > > > > > > >
> > > > > > > > > > > > > > Em 25/10/07, Edinho Almeida <edinhoalmeida em gmail.com>
> > > > > > > > > > > > > > escreveu:
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > Oi Luciano,
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > Se você se refere a modelagem nas classes que
> > > > > > > > > > > > > > > interagem com o DB, eu crio get's e set's específicos para o que eu
> > > > > > > > > > > > > > > preciso. No model.
> > > > > > > > > > > > > > > Ex:
> > > > > > > > > > > > > > > function getNumComentarios($post_id){
> > > > > > > > > > > > > > > $query =
> > > > > > > > > > > > > > > $this->db->getwhere('tabela_comentarios',array('post_id'=>$post_id));
> > > > > > > > > > > > > > > return $query->num_rows();
> > > > > > > > > > > > > > > }
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > Uma vantagem de usar o ActiveRecord é que você
> > > > > > > > > > > > > > > poderá alterar o DB de mysql para postgresql, por exemplo, sem alterar nada
> > > > > > > > > > > > > > > em suas classes. Outra é que o ele já cria o sql de forma a evitar o SQL
> > > > > > > > > > > > > > > Injection.
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > Abs
> > > > > > > > > > > > > > > Edinho Almeida
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > On 10/25/07, Luciano Soares <lussterl em gmail.com>
> > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > Pessoal ninguém aí pode dar uma opiunião
> > > > > > > > > > > > > > > > não?
> > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > Em 24/10/07, Luciano Soares <lussterl em gmail.com>
> > > > > > > > > > > > > > > > escreveu:
> > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > Não entendi o que você quis dizer Marcus
> > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > Usa assim como?
> > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > Em 24/10/07, Marcus Cavalcanti <marcus.cavalcanti em gmail.com >
> > > > > > > > > > > > > > > > > escreveu:
> > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > Uso assim mesmo, no estilo Bean do Java
> > > > > > > > > > > > > > > > > > como modelos. ActiveRecord sim, pq nao?
> > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > --
> > > > > > > > > > > > > > > > > > *Marcus Cavalcanti*
> > > > > > > > > > > > > > > > > > marcusc em myfreecomm.com.br
> > > > > > > > > > > > > > > > > > +55 (21) 2106-9700
> > > > > > > > > > > > > > > > > > <http://www.myfreecomm.com.br>
> > > > > > > > > > > > > > > > > > ------------------------------
> > > > > > > > > > > > > > > > > > "Esta mensagem pode conter informações
> > > > > > > > > > > > > > > > > > confidenciais, particulares ou privilegiadas. O uso dessas informações por
> > > > > > > > > > > > > > > > > > pessoas não autorizadas está sujeito às penas da lei."
> > > > > > > > > > > > > > > > > > "This message may contain confidential,
> > > > > > > > > > > > > > > > > > proprietary or legally privileged information. The misuse of the information
> > > > > > > > > > > > > > > > > > contained herein by non authorized people is subject to legal penalties."
> > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > On 10/24/07, Luciano Soares <lussterl em gmail.com
> > > > > > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > > Pessoal como vocês fazem modelagem
> > > > > > > > > > > > > > > > > > > dos seus modelos? Criam gets e sets. Ou simplificam tudo numa função?
> > > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > > Antes do Code Igniter eu criava
> > > > > > > > > > > > > > > > > > > minhas entidades e meus Daos. Fazia meus gets e sets e tudo o mais. Gostaria
> > > > > > > > > > > > > > > > > > > de saber como vcs fazem a modelagem de seus modelos. Como seria a forma mais
> > > > > > > > > > > > > > > > > > > prática.
> > > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > > Vcs usam o Active Record?
> > > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > > Pessoa podemos usar esse tópica pra
> > > > > > > > > > > > > > > > > > > compartilhar idéias. Até mais.
> > > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > > Luciano
> > > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > > _______________________________________________
> > > > > > > > > > > > > > > > > > > Lista mailing list
> > > > > > > > > > > > > > > > > > > Lista em codeigniter.com.br
> > > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > > _______________________________________________
> > > > > > > > > > > > > > > > > > Lista mailing list
> > > > > > > > > > > > > > > > > > Lista em codeigniter.com.br
> > > > > > > > > > > > > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > > _______________________________________________
> > > > > > > > > > > > > > > > Lista mailing list
> > > > > > > > > > > > > > > > Lista em codeigniter.com.br
> > > > > > > > > > > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > >
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > > _______________________________________________
> > > > > > > > > > > > > > > Lista mailing list
> > > > > > > > > > > > > > > Lista em codeigniter.com.br
> > > > > > > > > > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > > >
> > > > > > > > > > > > > >
> > > > > > > > > > > > > > _______________________________________________
> > > > > > > > > > > > > > Lista mailing list
> > > > > > > > > > > > > > Lista em codeigniter.com.br
> > > > > > > > > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > > > > > > > > >
> > > > > > > > > > > > > >
> > > > > > > > > > > > > >
> > > > > > > > > > > > >
> > > > > > > > > > > > > _______________________________________________
> > > > > > > > > > > > > Lista mailing list
> > > > > > > > > > > > > Lista em codeigniter.com.br
> > > > > > > > > > > > >
> > > > > > > > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > > > > > > > >
> > > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > _______________________________________________
> > > > > > > > > > > > Lista mailing list
> > > > > > > > > > > > Lista em codeigniter.com.br
> > > > > > > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > > _______________________________________________
> > > > > > > > > > > Lista mailing list
> > > > > > > > > > > Lista em codeigniter.com.br
> > > > > > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > > _______________________________________________
> > > > > > > > > Lista mailing list
> > > > > > > > > Lista em codeigniter.com.br
> > > > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > --
> > > > > > > > Daniel Costa
> > > > > > > > ::. http://danielcosta.info
> > > > > > > > _______________________________________________
> > > > > > > > Lista mailing list
> > > > > > > > Lista em codeigniter.com.br
> > > > > > > >
> > > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > > _______________________________________________
> > > > > > > Lista mailing list
> > > > > > > Lista em codeigniter.com.br
> > > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > > >
> > > > > > >
> > > > > >
> > > > > > _______________________________________________
> > > > > > Lista mailing list
> > > > > > Lista em codeigniter.com.br
> > > > > >
> > > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > > >
> > > > > >
> > > > >
> > > > > _______________________________________________
> > > > > Lista mailing list
> > > > > Lista em codeigniter.com.br
> > > > >
> > > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > > >
> > > > >
> > > >
> > > > _______________________________________________
> > > > Lista mailing list
> > > > Lista em codeigniter.com.br
> > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > > >
> > > >
> > >
> > > _______________________________________________
> > > Lista mailing list
> > > Lista em codeigniter.com.br
> > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > >
> > >
> >
> > _______________________________________________
> > Lista mailing list
> > Lista em codeigniter.com.br
> > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >
> >
>
> _______________________________________________
> Lista mailing list
> Lista em codeigniter.com.br
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://codeigniter.com.br/pipermail/lista_codeigniter.com.br/attachments/20071101/c4cac9fb/attachment-0001.html
Mais detalhes sobre a lista de discussão Lista