Simplemente el código que escribirías en el controller para guardar el
modelo y sus modelos asociados ahora lo pondrías en el modelo. Haciendo así
el controlador mas liviano y el modelo realmente más interesante.
On 10/24/07, mbavio <[EMAIL PROTECTED]> wrote:
>
>
> mmm no lo entendi del todo... En el ejemplo que diste, el "saveAll"
> estaria guardando la informacion del modelo en si y de todos sus
> modelos asociados? Que significa esto? Que me conviene asociar bien en
> el modelo y con saveAll me ahorro guardar varios modelos?
> Perdon por tantas preguntas, pero es que quiero empezar bien con
> Cake, y no haciendo el tutorial del blog que es un chiste... Saludos.
>
> On 24 oct, 10:09, "Joaquin Windmüller" <[EMAIL PROTECTED]> wrote:
> > Exactamente,
> >
> > Se trata de colocar el código repetido que se encargue de interacción
> con la
> > base de datos en el modelo.
> >
> > Un ejemplo bastante interesante es cuando tienes un modelo con varias
> > relaciones. Si alguna de tus acciones recibe los datos de el modelo y de
> sus
> > modelos asociados puede hacer la función que recibe esos datos y guarda
> el
> > modelo y sus asociaciones con lo que convertirías tu controlador de
> varias
> > líneas a una o dos líneas ya que el grueso de la interacción con los
> modelos
> > se hacen en la función asociada.
> >
> > Por ejemplo:
> >
> > if ($this->Modelo1->save($this->data['Modelo1'])) {
> > if ($this->Modelo2->save($this->data['Modelo2'])) {...} else {...}
> >
> > } else ...
> >
> > podrias convertirlo en
> >
> > if ($this->Modelo1->saveAll($this->data)) {...} else {...}
> >
> > Espero que se entienda...
> > On 10/24/07, dardosordi <[EMAIL PROTECTED]> wrote:
> >
> >
> >
> >
> >
> > > El modelo es una clase, en ella pondrás todas las funciones
> > > relacionadas con el concepto que modelan los objetos de esa clase.
> > > En concreto, si ves que comienzas a repetir la misma serie de llamadas
> > > a funciones del modelo en varios lugares de tus controladores o
> > > comienzas a hacer secuencias complejas de estas llamadas (dependerá de
> > > la complejidad de tu aplicación) llegará el tiempo en que lo veas y
> > > digas:
> > > 'oh, debería poner todo este lío en una función aparte'. Cuando ese
> > > momento llegue (eventualmente lo hará), el lugar indicado para estas
> > > funciones es el modelo.
> >
> > > On 24 oct, 02:13, mbavio <[EMAIL PROTECTED]> wrote:
> > > > Joaquin, otra consulta....
> > > > En el pdf que has pasado, recomienda que el buen cake es hacer un
> gran
> > > > modelo y un no tan gran controlador... Podrias dar algun ejemplo
> > > > concreto de esto? O sea, para hacer un gran modelo, debo agregar
> algo
> > > > mas que las relaciones y las validaciones?
> >
> > > > Saludos.
> >
> > > > On 23 oct, 13:34, "Joaquin Windmüller" <[EMAIL PROTECTED]>
> wrote:
> >
> > > > > Hola,
> >
> > > > > EWn términos generales lo que dijo Diego está correcto, pero de
> hecho
> > > Cake
> > > > > recomienda "Fat Model, thin controller" es decir, colocar más
> énfasis
> > > en
> > > > > agregar funciones que te ayuden a disminuir la cantidad de trabajo
> en
> > > el
> > > > > controlador.
> >
> > > > >http://cakephp.org/files/OCPHP.pdf
> >
> > > > > Las validaciones se definen en el modelo, y es muy raro cuando
> tienes
> > > que
> > > > > hacer alguna lógica de validación adicional. Y si tienes que
> hacerla
> > > es
> > > > > mejor ponerla en el modelo.
> >
> > > > > El controlador se encarga de solicitar información (al modelo) y
> > > prepararla
> > > > > para pasarsela a la vista. O recibir data que luego solicita al
> modelo
> > > que
> > > > > guarde.
> >
> > > > > La vista sólo se encarga de presentar al usuario los datos
> recibidos
> > > desde
> > > > > el controlador.
> >
> > > > > Saludos.
> >
> > > > > On 10/23/07, Diego Villar <[EMAIL PROTECTED]> wrote:
> >
> > > > > > Haber, espero no equivocarme, y si es así, bueno que alguien me
> > > corrija.
> >
> > > > > > De forma muy básica:
> >
> > > > > > Modelo: una extención de reglas de la base de datos, esto
> > > practicamente lo
> > > > > > resolves muy rapido con la utilidad de shell "cake bake" que se
> > > encuentra en
> > > > > > cake.
> >
> > > > > > Controlador: Aqui se trabajan las validaciones, la lectura y
> > > escritura de
> > > > > > datos desde y hacia la base de datos interactuando con el
> modelo.
> >
> > > > > > Vista: Aqui se resuelve lo que el usuario va a ver, este
> interactua
> > > con el
> > > > > > controlador, enviando datos a grabar o recibiendo datos que
> mostrar.
> >
> > > > > > Esto, algo asi como conceptos muuuy generales.
> >
> > > > > > En orden de carga de trabajo, creo que el modelo es lo mas
> rapido
> > > una vez
> > > > > > analizada y cerrada la lógica de negocios.
> >
> > > > > > Creo que la carga principal vendra en el desarrollo de
> controllers y
> > > luego
> > > > > > de las vistas, esto depende de que tanto trabajo se ponga en las
> > > vistas, ya
> > > > > > que el orden podría alterarse, pero por lo general al menos en
> mi
> > > > > > experiencia, me dio algo mas de trabajo los controllers.
> >
> > > > > > Espero te sea útil, saludos!
> >
> > > > > > Diego.
> >
> > > > > > El día 23/10/07, mbavio <[EMAIL PROTECTED]> escribió:
> >
> > > > > > > Gracias por la respuesta de ambos, siguiendo un poco con este
> > > tema,
> > > > > > > quisiera realizar otra pregunta, que no se si tiene una
> respuesta
> > > > > > > clara... cual parte del sistema requiere mas tiempo de
> trabajo? el
> > > > > > > modelo, la vista o el controlador? suponiendo que las personas
> que
> > > se
> > > > > > > ocupan de cada parte, saben de bases de datos, maquetacion y
> php,
> > > > > > > respectivamente... Lo que quiero saber con certeza es si mas o
> > > menos
> > > > > > > los 3 van a tener la misma carga de trabajo, o hay alguno que
> va a
> > > > > > > tener que escribir mas codigo que los otros... Espero que se
> > > entienda
> > > > > > > mi pregunta... Saludos.
> >
> > > > > > > On 23 oct, 10:51, dardosordi < [EMAIL PROTECTED]> wrote:
> > > > > > > > Js y Ajax -> a la vista.
> >
> > > > > > > > El Model es quien se encarga de validar y hablar con la base
> de
> > > datos.
> > > > > > > > La vista es lo que percibe el usuario. Y el Controlador
> estaría
> > > > > > > > cumpliendo la función de unir estos dos, ya que es difícil
> en el
> > > > > > > > desarrollo web acoplar la vista directamente al modelo (el
> MVC
> > > > > > > > original utilizaba el patrón observador). Básicamente el
> > > controlador
> > > > > > > > es quien arbitra la interacción del usuario con el sistema,
> y
> > > puede
> > > > > > > > comunicarse con el modelo y la vista.
> >
> > > > > > > > On 22 oct, 23:40, "Diego Villar" < [EMAIL PROTECTED]>
> wrote:
> >
> > > > > > > > > No me queda muy clara tu pregunta, pero me da la impresión
> de
> > > que te
> > > > > > > referis
> > > > > > > > > a scripts que se ejecutarán en el navegador, esto por lo
> > > general es
> > > > > > > mas
> > > > > > > > > parte de una vista que de un controlador, pensa en un
> > > controlador
> > > > > > > algo asi
> > > > > > > > > como en la capa que habla con la base de datos, realiza
> > > > > > > validaciones, etc y
> > > > > > > > > ese tipo de cosas y en la vista todo lo referente a el
> > > maquetado
> > > > > > > hacia el
> > > > > > > > > usuario.
> >
> > > > > > > > > saludos!
> >
> > > > > > > > > El día 22/10/07, mbavio <[EMAIL PROTECTED]> escribió:
> >
> > > > > > > > > > Hola, estoy tratando de dilucidar un asunto puntual...
> en
> > > que
> > > > > > > parte
> > > > > > > > > > iria todo lo que es referido al comportamiento del
> sitio,
> > > > > > > realizado en
> > > > > > > > > > js y ajax... en la vista? o en el controlador?
> >
> > > > > > > > > > Saludos, y gracias.
> >
> > > > > > > > > > Martin Bavio
> >
> > > > > --
> > > > > Joaquín Windmüller
> > > > > Cel: 0416-8319382
> >
> > > > > Weblog personal - Diseño web y más...
> > > > > [EMAIL PROTECTED]
> > > > > http://aikon.com.ve/
> >
> > --
> > Joaquín Windmüller
> > Cel: 0416-8319382
> >
> > Weblog personal - Diseño web y más...
> > [EMAIL PROTECTED]
> > http://aikon.com.ve/
>
>
> >
>
--
Joaquín Windmüller
Cel: 0416-8319382
Weblog personal - Diseño web y más...
[EMAIL PROTECTED]
http://aikon.com.ve/
--~--~---------~--~----~------------~-------~--~----~
Has recibido este mensaje porque estás suscrito a Grupo "CakePHP-es" de Grupos
de Google.
Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a [email protected]
Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED]
Para obtener más opciones, visita este grupo en
http://groups.google.com/group/CakePHP-es?hl=es.
-~----------~----~----~----~------~----~------~--~---