Foros del Web » Programando para Internet » PHP » CodeIgniter »

Codeigniter, clases

Estas en el tema de Codeigniter, clases en el foro de CodeIgniter en Foros del Web. Buenas compañeros, aca con otra consulta, esta con respecto a tema teorico-practico, un caso deseo listar los nombre de los paises en una pagina entonces ...
  #1 (permalink)  
Antiguo 13/05/2011, 22:04
 
Fecha de Ingreso: abril-2010
Mensajes: 33
Antigüedad: 14 años
Puntos: 1
Codeigniter, clases

Buenas compañeros, aca con otra consulta, esta con respecto a tema teorico-practico, un caso deseo listar los nombre de los paises en una pagina entonces en mi controlador llamo a un al model paises y ejecuto un metodo listarPaises que trae la lista de la base de datos, que es como comunmente se hace, pero si deseo hacerlo mas abstracto como por ejemplo que controlador llame a una clase que implementa una interfaz donde esta declarado el metodo listarPaises, esto tal vez con la finalidad de no traer la lista desde base de datos sino desde un xml o txt cual seria la manera de llevar acabo.
  #2 (permalink)  
Antiguo 18/05/2011, 10:06
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: Codeigniter, clases

con un helper o libreria?
  #3 (permalink)  
Antiguo 19/05/2011, 20:15
 
Fecha de Ingreso: abril-2010
Mensajes: 33
Antigüedad: 14 años
Puntos: 1
Respuesta: Codeigniter, clases

Gracias por tu respuesta y tu tiempo, eso es lo que deseo saber si se debe hacer como una librería o un helper mi duda es si se puede como modelo o eso solo es para base de datos? gracias por su tiempo.
  #4 (permalink)  
Antiguo 20/05/2011, 08:45
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 6 meses
Puntos: 890
Respuesta: Codeigniter, clases

Conceptos:

Un helper normalmente va a estar disponible en todo el recorrido del sistema (normalmente son funciones simples)
Una libreria tambien lo puede ser, pero la caracteristica del mismo hace que debamos mantenerlo "aislado" EJM: un conjunto de clases (tratamiento de imagenes, sistemas de email, un ORM)
Un modelo, creo que ya se sabe que es y para que sirve. Pudiendio estar disponble para cualquier controlador. No es exclusivo para hacer consultas.

Partiendo desde alli lo puedes hacer tranquilamente como modelo.

Saludos.
__________________
Drupal Argentina
  #5 (permalink)  
Antiguo 20/05/2011, 19:32
 
Fecha de Ingreso: abril-2010
Mensajes: 33
Antigüedad: 14 años
Puntos: 1
Respuesta: Codeigniter, clases

NUCKLEAR, gracias por responder. si te entendí bien el podemos crear funciones y clases que realicen tareas especificas y se agruparían generalmente las funciones en un helper y las clases en una librería. y que podemos cargar la librería y/o un helper que se requiera en el modelo o en el controlador. por otro lado en el modelo colocamos la lógica de negocio y no es necesario que se comunique con la BD y se cargaría únicamente de un controlador (es posible llamar a un modelo desde una clase de una librería?).

En todo caso agradecería, me orientes con esto ultimo por que al respecto en los tutoriales que he revisado generalmente no esta muy claro. gracias por tu tiempo.
  #6 (permalink)  
Antiguo 20/05/2011, 20:21
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 6 meses
Puntos: 890
Respuesta: Codeigniter, clases

Llamar a un metodo de un modelo desde una libreria o un helper, de poder se puede, pero romperias el concepto del patron. Por eso te mencione de las librerias.

Hasta aca llego, profundizar mas en esto haria que peque de de sabiondo por que hay algunos conceptos y patrones que aun no tengo muy en claro, quizas algunos de nuestros expertos en POO y Frameworks nos de una luz... :)

Saludos y suerte!
__________________
Drupal Argentina

Etiquetas: clases, frameworks-y-php-orientado-a-objetos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:35.