SlideShare une entreprise Scribd logo
MkFramework
Builder : générer notre couche modèle
Introduction
● Le mkframework utilise l’architecture MVC
Modèle Vue Contrôleur
● Ici nous allons générer cette « couche Modèle »
● Elle permet d’interagir avec vos données : 
– Base de données (Mysql, Sql server, Postgresql…)
– Bases embarquées (sqlite, csv, xml, json)
● Nous allons ici générer les classes qui 
permettront cette interaction
Sommaire
● Présentation du fichier de configuration
● Paramétrage de nos connexions
● Génération de la couche modèle avec le 
Builder
Ouvrez le builder, cliquez sur 
« Explorer le projet »
Déroulez le répertoire « conf »
● En cliquant sur le 
répertoire « conf », 
vous voyez lister 
l’ensemble des 
fichiers de 
configuration.
● Cliquez sur 
« connexion.ini.php » 
Analysons notre fichier de 
configuration des connexions
A gauche, le nom de profil
● La première partie de 
chaque ligne est le 
nom du profil, il est 
donné à titre 
d’exemple.
● Ne pas hésiter à le 
modifier à sa 
convenance
A droite les attributs du profil
● Chaque bloc contient 
des lignes de type
profil.attribut=valeur
● Par exemple pour 
mysql, on voit
– dsn
– sgbd
– username
– password
Explication sur les attributs
● dsn :
Data Source Name
Le framework utilise pdo
pour se connecter, pour plus
d’information sur dsn,
rendez-vous sur ce lien
● sgbd :
Le type de driver à utiliser :
– pdo_mysql
– pdo_sqlserver
– pdo_sqlite
– csv,xml,json...
– ...
● password :
Le mot de passe
● username :
Le nom d’utilisateur
note
● Dans votre fichier de configuration, vous avez
un exemple pour chaque type de base de
données.
Par exemple, paramétrons ainsi
● Nous paramétrons une base de données « blog »
installé sur un serveur mysql local « host=localhost »
● On en profite pour modifier le nom du profil pour
« monBlog » à la place de « mysqlExple »
Ouvrez le builder, puis cliquez sur
« Editer le projet »
Choisissez le menu « Créer la
couche modèle »
Le Builder vous liste vos profils de
connexion
Sélectionnons notre profil
fraîchement créé
Formulaire de génération
● Le builder vous
liste les tables qu’il
trouve avec le
profil séléctionné
Détaillons l’interface
zoom
● On commence par la case à cocher qui permet
de sélectionner les tables dont on souhaite
créer les classes modèles.
zoom
● Le nom de la table en base de données
zoom
● Le nom du champ de la table qui est la clé
primaire
zoom
● La possibilité de générer une méthode
« getSelect() » qui retournera un tableau indexé
qui peut être utilisé dans un menu déroulant de
formulaire.
zoom
● La possibilité d’ajouter des contraintes qui
valideront les données avant de les insérer en
base de données.
Zoom sur les contraintes
● En cliquant sur le lien,
vous avez une popup
permettant d’ajouter
des contraintes
d’enregistrement.
Validons ce formulaire
Le builder vous génère la couche
modèle
La génération de la couche modèle
● Le builder vous
génère dans le
répertoire « model »
un fichier par table
selon le formulaire
précédent.
Exemple de fichier modèle
● Voici un exemple des deux classes model_article
et row_article stoqués dans le même fichier
model_article.php
● Voyez à quoi
correspond cette
fameuse méthode
« getSelect() »
La méthode getSelect()
Les contraintes
● Voyez ici à quoi
correspond la
contrainte ajoutée
précédemment

Contenu connexe

Similaire à 04 builder-generation-couche-model

Patrons de creation
Patrons de creationPatrons de creation
Patrons de creation
omri med
 
presentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdfpresentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdf
RihabBENLAMINE
 
La 2ème partie de la présentation PHP
La 2ème partie de la présentation PHPLa 2ème partie de la présentation PHP
La 2ème partie de la présentation PHP
Club Scientifique de l'ESI - CSE
 
chapitre 1 Android 2.pptx
chapitre 1 Android 2.pptxchapitre 1 Android 2.pptx
resume-theorique-m106-partie3-0903-1-622f07613b825.pdf
resume-theorique-m106-partie3-0903-1-622f07613b825.pdfresume-theorique-m106-partie3-0903-1-622f07613b825.pdf
resume-theorique-m106-partie3-0903-1-622f07613b825.pdf
FootballLovers9
 
Graphiti
GraphitiGraphiti
myXtraction, une solution innovante
myXtraction, une solution innovantemyXtraction, une solution innovante
myXtraction, une solution innovante
LASSA Rafik
 
Projet de semestre / 3ème partie / partage de contenus multimédia
Projet de semestre / 3ème partie / partage de contenus multimédiaProjet de semestre / 3ème partie / partage de contenus multimédia
Projet de semestre / 3ème partie / partage de contenus multimédia
Laurent Moccozet
 
Fondamentaux des CMS
Fondamentaux des CMSFondamentaux des CMS
Fondamentaux des CMS
Frédéric Simonet
 
Réseaux avec NetLogo
Réseaux avec NetLogoRéseaux avec NetLogo
Réseaux avec NetLogo
Alvaro Gil
 
introduction au SQL et MySQL
introduction au SQL et MySQLintroduction au SQL et MySQL
introduction au SQL et MySQL
Abdoulaye Dieng
 
Presentation DESIGN PATTERNS DE CREATION.pptx
Presentation DESIGN PATTERNS DE CREATION.pptxPresentation DESIGN PATTERNS DE CREATION.pptx
Presentation DESIGN PATTERNS DE CREATION.pptx
davidZorom
 
srep_cours_06.pdf
srep_cours_06.pdfsrep_cours_06.pdf
srep_cours_06.pdf
SamirAwad14
 
Td4 bibnum
Td4 bibnumTd4 bibnum
Transformation M2M avec ATL
Transformation M2M avec ATL Transformation M2M avec ATL
Transformation M2M avec ATL
Halima Bouabdelli
 
Présentaion sur le modéle JDBC JEE .pptx
Présentaion sur le modéle JDBC JEE .pptxPrésentaion sur le modéle JDBC JEE .pptx
Présentaion sur le modéle JDBC JEE .pptx
salmachtioui1
 
My sql
My sqlMy sql
My sql
hajaar
 

Similaire à 04 builder-generation-couche-model (20)

Patrons de creation
Patrons de creationPatrons de creation
Patrons de creation
 
Cours jee 1
Cours jee 1Cours jee 1
Cours jee 1
 
presentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdfpresentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdf
 
La 2ème partie de la présentation PHP
La 2ème partie de la présentation PHPLa 2ème partie de la présentation PHP
La 2ème partie de la présentation PHP
 
chapitre 1 Android 2.pptx
chapitre 1 Android 2.pptxchapitre 1 Android 2.pptx
chapitre 1 Android 2.pptx
 
resume-theorique-m106-partie3-0903-1-622f07613b825.pdf
resume-theorique-m106-partie3-0903-1-622f07613b825.pdfresume-theorique-m106-partie3-0903-1-622f07613b825.pdf
resume-theorique-m106-partie3-0903-1-622f07613b825.pdf
 
Graphiti
GraphitiGraphiti
Graphiti
 
myXtraction, une solution innovante
myXtraction, une solution innovantemyXtraction, une solution innovante
myXtraction, une solution innovante
 
Projet de semestre / 3ème partie / partage de contenus multimédia
Projet de semestre / 3ème partie / partage de contenus multimédiaProjet de semestre / 3ème partie / partage de contenus multimédia
Projet de semestre / 3ème partie / partage de contenus multimédia
 
Fondamentaux des CMS
Fondamentaux des CMSFondamentaux des CMS
Fondamentaux des CMS
 
Réseaux avec NetLogo
Réseaux avec NetLogoRéseaux avec NetLogo
Réseaux avec NetLogo
 
introduction au SQL et MySQL
introduction au SQL et MySQLintroduction au SQL et MySQL
introduction au SQL et MySQL
 
09coursaccess
09coursaccess09coursaccess
09coursaccess
 
Presentation DESIGN PATTERNS DE CREATION.pptx
Presentation DESIGN PATTERNS DE CREATION.pptxPresentation DESIGN PATTERNS DE CREATION.pptx
Presentation DESIGN PATTERNS DE CREATION.pptx
 
srep_cours_06.pdf
srep_cours_06.pdfsrep_cours_06.pdf
srep_cours_06.pdf
 
Td4 bibnum
Td4 bibnumTd4 bibnum
Td4 bibnum
 
Guidetalendd
GuidetalenddGuidetalendd
Guidetalendd
 
Transformation M2M avec ATL
Transformation M2M avec ATL Transformation M2M avec ATL
Transformation M2M avec ATL
 
Présentaion sur le modéle JDBC JEE .pptx
Présentaion sur le modéle JDBC JEE .pptxPrésentaion sur le modéle JDBC JEE .pptx
Présentaion sur le modéle JDBC JEE .pptx
 
My sql
My sqlMy sql
My sql
 

Plus de Michael Bertocchi

Presentation mkframework software craftsmanship a l'afup
Presentation mkframework software craftsmanship a l'afupPresentation mkframework software craftsmanship a l'afup
Presentation mkframework software craftsmanship a l'afup
Michael Bertocchi
 
01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship
Michael Bertocchi
 
06 migration-anciens-projets
06 migration-anciens-projets06 migration-anciens-projets
06 migration-anciens-projets
Michael Bertocchi
 
06 migration-anciens-projets
06 migration-anciens-projets06 migration-anciens-projets
06 migration-anciens-projets
Michael Bertocchi
 
01 installation
01 installation01 installation
01 installation
Michael Bertocchi
 
01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship
Michael Bertocchi
 
05 zoom-classe-layout
05 zoom-classe-layout05 zoom-classe-layout
05 zoom-classe-layout
Michael Bertocchi
 
04 zoom-classe-view
04 zoom-classe-view04 zoom-classe-view
04 zoom-classe-view
Michael Bertocchi
 
03 presentation-navigation
03 presentation-navigation03 presentation-navigation
03 presentation-navigation
Michael Bertocchi
 
02 presentation-application-normal
02 presentation-application-normal02 presentation-application-normal
02 presentation-application-normal
Michael Bertocchi
 
Mkframework: 01 installation
Mkframework: 01 installationMkframework: 01 installation
Mkframework: 01 installation
Michael Bertocchi
 
01 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 201701 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 2017
Michael Bertocchi
 

Plus de Michael Bertocchi (12)

Presentation mkframework software craftsmanship a l'afup
Presentation mkframework software craftsmanship a l'afupPresentation mkframework software craftsmanship a l'afup
Presentation mkframework software craftsmanship a l'afup
 
01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship
 
06 migration-anciens-projets
06 migration-anciens-projets06 migration-anciens-projets
06 migration-anciens-projets
 
06 migration-anciens-projets
06 migration-anciens-projets06 migration-anciens-projets
06 migration-anciens-projets
 
01 installation
01 installation01 installation
01 installation
 
01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship
 
05 zoom-classe-layout
05 zoom-classe-layout05 zoom-classe-layout
05 zoom-classe-layout
 
04 zoom-classe-view
04 zoom-classe-view04 zoom-classe-view
04 zoom-classe-view
 
03 presentation-navigation
03 presentation-navigation03 presentation-navigation
03 presentation-navigation
 
02 presentation-application-normal
02 presentation-application-normal02 presentation-application-normal
02 presentation-application-normal
 
Mkframework: 01 installation
Mkframework: 01 installationMkframework: 01 installation
Mkframework: 01 installation
 
01 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 201701 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 2017
 

04 builder-generation-couche-model