2011-12-12 6 views
0

Je suis nouveau dans les frameworks PHP et pour démarrer mon projet, je suis allé essayer FuelPHP. Après quelques jours de tests, j'ai compris comment les choses fonctionnent. Les contrôleurs contrôlent les actions, les vues contrôlent le contenu $ et le modèle contrôle la mise en page. Mais qu'en est-il des modèles, à quoi servent-ils?Utilisation des modèles dans FuelPHP?

+1

[Wiki] (http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller) est assez clair: _ "Le modèle gère le comportement et les données de l'application domaine, répond aux demandes d'informations sur son état (généralement à partir de la vue) et répond aux instructions de changement d'état (généralement à partir du contrôleur) Dans les systèmes pilotés par événement, le modèle notifie les observateurs (généralement les vues) qu'ils peuvent réagir. "_ – CodeCaster

Répondre

0

modèles controlez votre données et avoir un contact direct avec votre base de données ont une lecture here

2

Les modèles sont des abstractions sur les données stockées ailleurs, ils encapsulent l'accès aux données par la création d'objets standard, les appels de méthode, accès à la propriété, etc. juste comme des objets ordinaires. L'idée principale ici est que le contrôleur (ou tout objet qui nécessite les données) n'a pas besoin de savoir comment obtenir les données ou comment elles sont stockées. Il pourrait être stocké dans des fichiers, web (via webservice), base de données, quelque chose qui pourrait persister des données. Les données pourraient être récupérées avec une requête de service web, une requête de base de données, une lecture de fichier, etc.

Par exemple, "Gimme student record with id 1" pourrait être aussi simple que student := new student(1); et ensuite vous avez accès au nom, à l'adresse de l'étudiant , etc. Mais comment l'étudiant récupère-t-il ses données? Où stocke-t-il les données? C'est par souci et pourrait être réglé (ou devrait être réglable) au besoin.

0

Vous pourriez avoir par exemple

contact avec ID, nom, Détail et propriétés contactType.

L'idée est de le garder minimal c'est fondamentalement quelque chose à charioter autour de toutes les propriétés utiles d'une entité.

Ceci est la définition actuelle de MVC. Rien sur le backend dedans. Ce serait une bibliothèque séparée/DLL qui ne connaît que le modèle, et comment les données sous-jacentes sont stockées dans la base de données.