El 25/10/2007, a las 5:22, mbavio escribió:
> Perdon por mi extrema idiotez, pero sigo sin cazarla del todo... > Entiendo el concepto, pero no entiendo como aplicarlo... Me podrias > dar un ejemplo tonto pero entendible para que me termine de cerrar? > Perdon, pero creo que es lo mas dificil, esto de aprender a pensar > distinto... Yo tampoco lo veo del todo claro, pero lo que hago para darle "peso" al modelo es más o menos así: Supongamos el típico ejemplo de Blog (con sus Post y demás). Ahora supongamos que en el modelo tengo un campo "publicar" que me indica si un Post está publicado (1) o en borrador (2). Y, por otro lado, quiero poder controlar eso a través de un botón de la interfaz que apunte a /posts/publicar/id o /post/borrador/id. Bueno, pues lo que haría sería crear métodos en el modelo que, tal que así (simplificando mucho y a lo mejor ni siquiera es esta la mejor manera): class Post extends AppModel { ... código ... function publicar ($id) { $this->id = $id; $this->saveField('publicar', 1); } function borrador ($id) { $this->id = $id; $this->saveField('publicar', 0); } } Por su parte, en el controlador tendría que poner una acción o acciones que se encargaran de responder a la petición del usuario: class PostsController extends AppController { ... código ... function publicar ($id) { $this->Post->publicar($id); } function borrador ($id) { $this->Post->borrador($id); } } Bueno, más o menos así. La idea es que el controlador "no sepa" nada acerca de cómo funciona el modelo. Simplemente se limita a recibir lo que el usuario le indica (ejecutar una acción) y la acción llama a métodos del modelo que realizan lo necesario con los datos para esa acción y luego pedir que se muestre la vista que sea adecuada (por ejemplo, un mensaje informando de que sea ha cambiado el estado de ese Post o actualizando un listado). El ejemplo es muy simple, pero quizá ilustre la idea. -- Fran Iglesias [EMAIL PROTECTED] --~--~---------~--~----~------------~-------~--~----~ 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 CakePHP-es@googlegroups.com 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. -~----------~----~----~----~------~----~------~--~---