Entendi, então pelo comentário dos dois Rafaeis :D eu vou ter que modificar
o autoload no config para conseguir ter duas classes com nomes diferentes
estendendo uma classe do core, correto?

2010/5/4 Rafael V. de Oliveira <[email protected]>

>  Ok Eric.
>
>
>
> Na verdade, tu podes extender com o nome que bem quiser!
>
>
>
> Um outro exemplo (este mais prático, eu uso e recomendo)
>
>
>
> Dentro da minha pasta libraries, eu tenho um ficheiro chamado Template.php
>
> Eu faço autoload nele, um vez que ao invés de usar a porcaria do
> $this->load->view(‘view_name’, array $data) eu uso
>
> $this->template->load(‘templates/default.php’, ‘view_name’, array $data);
>
> E a view_name eu já não faço mais nada. O template completo está dentro de
> templates/default.php
>
> Vantagens?
>
> Eu posso ter n templates. Inclusive para gestor de conteúdos e site.
> Inclusive posso trocar o template para época de festas, por exemplo if
> (date(‘m’) == 12 ) $template = ‘ho_ho_ho.php’;
>
>
>
> Acredito que desta forma vá resolver teu problema.
>
>
>
> Abraços!
>
>
>
> *De:* [email protected] [mailto:
> [email protected]] *Em nome de *Eric Saboia
> *Enviada em:* terça-feira, 4 de maio de 2010 18:38
> *Para:* CodeIgniter Brasil
> *Assunto:* Re: [CodeIgniter] RES: estendendo classes do core
>
>
>
> Rafael,
>
> Eu preciso exatamente do exemplo que você deu do MY_Blog, mas eu tinha
> entendido uma vez que eu tinha que seguir a nomeclatura da classe que eu
> queria estender.
>
> Por exemplo, se eu fosse estender o Controller do core, teria que usar
> My_Controller, sendo assim não poderia criar MY_Blog e estender de
> Controller, mas se isso realmente funcionar, ta resolvido o problema.. eu só
> quero poder criar N estensões de classes do core.
>
> 2010/5/4 Rafael V. de Oliveira <[email protected]>
>
> Eric, confesso que não estou a conseguir entender o que queres.
>
>
>
> Nós aqui desenvolvemos n sites por mês. E muitos deles têm muita coisa em
> comum, sejam no Controller ou no Model.
>
> Eu extendo o controller e uso o que preciso nele. O resto é o próprio
> framework. Assim como nos helpers.
>
> Por exemplo, o url_title não trabalha com acentuação. Extende ele e
> modifique apenas a function url_title. Se bem que parece-me que na versão
> 2.0 eles já estão a desenvolver uma solução para acentuação.
>
>
>
> Tente uma coisa do gênero:
>
> - Na pasta libraries, crie a classe com o nome que queres. Por exemplo:
> MY_Blog.php
>
> - Quando precisares no controller funções de blog, faças algo assim: class
> Blog extends MY_Blog {
>
>
>
> Talvez dê jeito para ti.
>
>
>
> Abraços
>
>
>
>
>
> *De:* [email protected] [mailto:
> [email protected]] *Em nome de *Eric Saboia
> *Enviada em:* terça-feira, 4 de maio de 2010 14:42
> *Para:* CodeIgniter Brasil
> *Assunto:* Re: [CodeIgniter] estendendo classes do core
>
>
>
> +-.. eu não queria deixar na pasta controllers, queria seguir o padrão do
> CI de colocar dentro da pasta libraries, sendo que ele me obriga a usar a
> nomeclatura Prefixo_Classe, no caso seria MY_Controller, mas se eu for
> seguir a nomeclatura, só consigo criar uma estensão de core..
>
> Talvez no caso de Controllers até funcione do jeito que você ta falando..
> mas se fosse outras classes, como o CI_Input por exemplo?
>
> 2010/5/4 Edinho Almeida <[email protected]>
>
> Oi Eric,
>
>
>
> Já fiz na correria:
>
> Na pasta controllers mesmo.
>
> base.php:
>
> class Base extends Controller {
>
> function Base(){ parent::Controller(); }
>
> }
>
> -------------------------------------------
>
> include_once('base.php');
>
> class Public extends Base {
>
> function Public(){ parent::Base(); }
>
> }
>
> -------------------------------------------
>
> include_once('base.php');
>
> class Admin extends Base {
>
> function Admin(){ parent::Base(); }
>
> }
>
> -------------------------------------------
>
> include_once('admin.php');
>
> class Users extends Admin {
>
> function Users(){ parent::Admin(); }
>
> }
>
> ------------------------------------------
>
>
>
> é isso ?
>
>
>
> Abs
>
> Edinho Almeida
> 11 8018-8019
>
>
> _______________________________________________
> Lista mailing list
> [email protected]
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
>
> _______________________________________________
> Lista mailing list
> [email protected]
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

Responder a