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

