Home

easyObject - User Manual - FR

image

Contents

1. foreign_field gt group_id Classe core Permission library classes objects core Permission class php public static function getColumns return array class_name gt array type gt string group_id gt array type gt many2one foreign_object gt core Group foreign_field gt permissions_ids rights gt array type gt integer Les droits qu il est possible d attribuer sont d finis dans le fichier config inc php define R_CREATE 1 autorisation de cr ation define R_READ 2 autorisation de consultation define R_WRITE 4 autorisation de modification define R_DELETE 8 autorisation de suppression define R MANAGE 16 autorisation de gestion des permissions documentation easyObject v 1 0 d cembre 2012 JOHO BY NC SA 13 20 Le champ rights des objets Permission est une combinaison binaire OU logiques des diff rents droits conc d s au groupe concern qu il est possible d isoler avec un masque binaire Si aucune permission n est d finie pour une classe donn e pour aucun des groupes auxquels appartient un utilisateur celui ci se voit attribuer les permissions par d faut d finies dans le fichier de configuration constante DEFAULT RIGHTS Syst mes de traduction Deux m canismes distincts sont l uvre selon qu il s agisse 1 dela traduction de termes li s une classe d objets 2
2. identifiant de l utilisateur l origine de l instance identifiant de l utilisateur l origine de la derni re modification de l instance bool en indiquant si l instance est publi e bool en indiquant si l instance t supprim e soft delete ou mise en corbeille M thodes communes Certaines m thodes d finies dans la classe core Object sont communes tous les objets M thode Description __ construct le constructeur invoqu lors de la cr ation d une nouvelle instance getSpecialFields renvoie les noms et types des champs syst mes d crits plus haut getColumns renvoie la description des champs utilisateurs getSchema renvoie le sch ma complet champs syst mes champs d fini dans getColumns getTable renvoie le nom de la table SQL associ e la classe d objet en cours getld renvoie l identifiant de l objet en cours getModifiedFields renvoie la liste des champs ayant d j t charg getModifiedFields renvoie la liste des champs qui ont t modifi s depuis le chargement de l objet resetLoadedFields remet z ro les flags de chargement des champs resetModifiedFields remet z ro les flags de modification des champs getUsedLangs renvoie la liste des langues pour lesquelles au moins un champ est d fini getFieldsNames renvoie les noms des champs dont le type est repris dans la liste sp cifi e getValues renvoie un tableau associatif contenant les noms et valeurs des champs s
3. values V rifie que les valeurs donn es pour le champ sp cifi sont valides documentation easyObject v 1 0 d cembre 2012 JOSO 16 20 BY NC SA La valeur renvoy e est soir FALSE soit un tableau associant pour chaque champ invlaide le nom du champ associ l identifiant de l erreur correspondante M thode browse mixed amp browse string object_class ids null fields null lang DEFAULT _LANG En cas de succ s cette m thode retourne pour la classe d objet donn e un tableau associant la liste des valeurs de chaque champ sp cifi pour chaque objet dont l identifiant est renseign En cas d erreur un entier contenant un ou plusieurs codes d erreur est retourn Note Cette fonction est susceptible de g n rer une requ te SQL pour chacun des identifiants indiqu s pour les objets non encore charg s dans le manager Une bonne pratique est donc de veiller ne pas l appeler cons cutivement pour chacun des champs d un objet mais bien en regroupant tous les champs n cessaires dans le tableau Sfields Exemple values amp browse core User array 3 array login firstname lastname echo values 3 login values 3 firstname values 3 lastname M thode search mixed search string Sobject_ class array domain null string order string sort asc integer start 0 limit lang DEFAULT LANG Retourne l
4. Javascript pas de traitement c t serveur Le format de leur nom est object _name list form view_name html Une s rie de tags HTML5 ont t choisis pour la r daction des vues Les tags utilis s ont t retenus sur base de l usage qui en est habituellement fait r serv s aux inputs puisque cette partie est g n r e automatiquement qui n ont par d faut aucun impact visuel documentation easyObject v 1 0 d cembre 2012 JOHO 18 20 BY NC SA Tags et attributs pour les vues Tag form section fieldset span div label var Attributs Description action l action ex cuter lors de la soumission du formulaire bouton save name permet de regrouper diff rents l ments au sein de sections accessibles par s lection d onglets title g n re l affichage d un cadre permettant de regrouper plusieurs l ments width largeur du span en de la largeur du parent width largeur du div en de la largeur du parent for le cas ch ant le nom du champ auquel le libell est associ name le cas ch ant l identifiant du libell ind pendant id le nom du champ onchange action ex cuter en cas de modification de la valeur du champ par l utilisateur crit en javascript utilisant la syntaxe jQuery readonly bool en indiquant si l interface utilisateur doit permettre la modification de ce champ valeur par d faut false note ce m canisme est limit la co
5. aussi bien en PHP librairie easyobject api php qu en Javascript easyobject api js et leurs signatures sont rigoureusement identiques dans les deux langages En cas d erreur la plupart de ces m thodes retournent un entier contenant un ou plusieurs codes d erreur qu il est possible d isoler gr ce un masque binaire qui sont d finis dans le fichier config inc php Constante Valeur Description UNKNOWN_ERROR INVALID_PARAM SQL_ERROR UNKNOWN_OBJECT NOT_ALLOWED something went wrong that requires to check the logs one or more parameters have invalid or incompatible value error while building SQL query or processing it unknown class or object action violates some rule or user don t have required permissions Dh M thode user _id integer user_id Renvoie l identifiant de l utilisateur courant sur base de l identifiant de la session PHP en cours M thode user_lang string user_lang Renvoie la langue au format ISO 639 de l utilisateur courant sur base de l identifiant de la session PHP en cours M thode login boolean login string ogin string password La m thode login tente de valider l identification d un utilisateur Si l identification est r ussie la m thode renvoie TRUE et la session courante est alors li e l identifiant de l objet utilisateur associ M thode validate mixed validate string object_class array
6. e la gestion des droits pour chaque classe d objet y compris pour la classe Permission elle m me des permissions peuvent tre d finies pour un ou plusieurs groupes d utilisateurs Les classes impliqu es sont documentation easyObject v 1 0 d cembre 2012 JOHO BY NC SA 12 20 Classe core User library classes objects core User class php public static function getColumns return array firstname gt array type gt string lastname gt array type gt string login gt array type gt string label gt Username password gt array type gt string label gt Password language gt array type gt string groups_ids gt array type gt many2many foreign_object gt core Group foreign_field gt users_ids rel_table gt core_rel_ group _user rel_foreign_key gt group_id rel_local_key gt user_id Classe core Group library classes objects core Group class php public static function getColumns return array name gt array type gt string users_ids gt array type gt many2many foreign_object gt core User foreign_field gt groups_ids rel_table gt core_rel_ group _user rel_foreign_ key gt user_id rel_local_key gt group_id permissions_ids gt array type gt one2many foreign_object gt core Permission
7. ligne mais pas de formatage ex une adresse text Utilis pour un champ destin stocker un texte pouvant tre assez long et contenir un formatage notes sous SQL les types TEXT BLOB ou MEDIUMTEXT MEDIUMBLOB sont recommand s binary Utilis pour un champ destin stocker n importe quelle valeur binaire ex une image un document notes sous SQL le type MEDIUMBLOB est recommand pour ce type de champ selection Utilis pour un champ destin stocker une valeur issue d une liste pr d finie Exemple issu de la classe core Log action gt array type gt selection selection gt array R_CREATE gt R_CREATE R_READ gt R_READ R_WRITE gt R WRITE R DELETE gt R DELETE R_MANAGE gt R_MANAGE Note La partie gauche de la fl che est celle qui sera affich e dans la boite de s lection la partie droite est ce qui sera stock en base de donn es date Utilis pour un champ destin stocker une date au format YYYY mm dd time Utilis pour un champ destin stocker une heure au format HH mm ss documentation easyObject v 1 0 d cembre 2012 JOSO 8 20 BY NC SA datetime Utilis pour un champ destin stocker une date au format YYYY mm dd HH mm ss timestamp quivalent datetime mais mesur en nombre de secondes depuis l Epoch Unix 1 janvier 1970 00 00 00 GMT many2one Utilis po
8. ment s avec la magic method PHP __call Exemple User amp get core User 3 Sfirst_name SUser gt getFirstname SUser gt setFirstname Lulu Notes Cette m thode n cessite le chargement de tous les champs de l objet qui peuvent tre nombreux et dont la valeur peut tre complexe obtenir Il est donc recommand de ne l utiliser que lorsqu on a effectivement besoin de l instance de l objet et non pour obtenir un champ particulier auquel cas il est pr f rable d utiliser la m thode browse M thode getStatic mixed amp getStatic string object_class Dans certains cas il est n cessaire d obtenir un objet vide pour une classe donn e par exemple dans le cadre de la validation du sch ma d une classe dition des objets Pour d finir la mise en page la liste des champs et les ventuelles interactions entre champs d un formulaire d dition nous utilisons un syst me de vues comparable des templates Chaque package poss de un dossier intitul views contenant pour chaque classe d objet un ou plusieurs fichiers HTML Ces fichiers sont au format HTMLS et contiennent des indications sur les champs et labels afficher ainsi que sur leur disposition pour l dition de la classe d objets laquelle ils se rapportent A nouveau ce syst me n est pas le plus l ger en terme d overhead mais offre l avantage d tre utilisable tel quel par le client
9. un ou plusieurs objets Exemples create a new object ids update core User array 0 update an object update core User ids array firstname gt John lastname gt Doe password gt secret create and update 3 objects at once ids update core User array 0 0 0 array firstname gt John lastname gt Doe password gt secret update several objects update core User ids array password gt md5 test search for one or more objects ids search core User array array lastname like oe array id in range 1 100 browse one or more objects obtain firstnames of users whose id is in the list values amp browse core User ids array firstname Pour la liste compl te des m thodes et de leurs signatures voir la description des m thodes de base documentation easyObject v 1 0 d cembre 2012 JOSO BY NC SA 3 20 Description de la structure arborescente Emplacement Description Dossier racine L emplacement contenant l application easyObject ex home easyobject www fichiers htaccess fichier de configuration apache utilis pour emp cher le listing des r pertoires et pour traiter les erreurs 404 fc lib php Librairie d inclusion de classes et de fichiers index php Ce script est galement appel dispatcher il est en charge de l inclusion des librairies n cessair
10. a liste des identifiants des objets correspondant un domaine donn tri sur un champ donn ventuellement limit e une certaine section M thode update mixed update string object_class array ids array values lang DEFAULT LANG Cette m thode permet la fois de cr er et de modifier des objets Lorsqu un l ment de la liste ids est mis z ro un nouvel objet est cr e et son identifiant est plac dans le tableau retourn par la m thode Pour des exemples voir BSUR Browse Search Update Remove M thode remove mixed remove string object_class array ids boolean permanent false Cette m thode permet de supprimer un ou plusieurs objets Si le param tre permanent est laiss FALSE le champ delete de l objet est mis TRUE et l objet n appara t plus dans les listes mais la suppression peut tre annul e Si le param tre permanent est mis TRUE l objet est supprim de la base de donn es et ne peut plus tre r cup r moins de la base de donn es n ait t sauvegard e documentation easyObject v 1 0 d cembre 2012 COSO 17 20 BY NC SA M thode get mixed amp get string object_class integer object_id Il est galement possible d obtenir une instance d objet Pour obtenir ou modifier la valeur des champs d clar s dans la m thode getColumns il est alors possible d utiliser les m thodes get et set au format OO standard impl
11. abel name classes_ids gt lt label gt lt br gt lt var id classes_ids view list default gt lt var gt documentation easyObject v 1 0 d cembre 2012 Q020 19 20 Exemple d une liste de la classe school Student Student list default html lt ul gt lt li id id width 108 gt lt 1i gt lt li id firstname width 23 gt lt 11 gt lt li id lastname width 23 gt lt 1i gt lt li id birthdate width 22 gt lt l1i gt lt li id subscription width 228 gt lt li gt lt ul gt Applications de base Certaines applications requ tes show sont incluses dans le noyau applicatif afin de faciliter la gestion et le d veloppement des packages core manage gestion des objets liste cr ation dition suppression par package Exemple d URL http localhost easyobject show core_manage core _utils voir le point Scripts utilitaires stand alone Exemple d URL http localhost easyobject show core_utils core setup permet de valider une nouvelle installation easyObject Scripts utilitaires stand alone Des scripts utilitaires permettent de r aliser certaines op rations non prises en charge par le noyau applicatif comme par exemple valider la coh rence d un nouveau package Il s agit en quelque sorte de plugins crits en PHP et regroup s dans le dossier data utils Les scripts pr vus en cours de d veloppement ou d j disponibles sont Disponibl
12. d un ou plusieurs autres champs de l objet en cours ou d un autre objet Notes l utilisation de l attribut store requiert la plupart du temps que les champs dont d pend la valeur du champ calcul aient un v nement onchange d clenchant la mise jour du champ calcul voir exemple Attribut Description result_type le type de la valeur r sultant de la fonction invoqu e store un bool en sp cifiant si le r sultat de la fonction doit tre stock en base de donn es dans ce cas la table associ e doit contenir le champ correspondant function une cha ne repr sentant le nom de la m thode devant tre invoqu e au format package Class method note cette m thode sera appel e l aide de la fonction PHP call_user func documentation easyObject v 1 0 d cembre 2012 CJ DSO 10 20 BY NC SA Exemple du champ rights _txt de la classe core Permission Extrait de la m thode getColumns rights gt array type gt integer onchange gt core Permission onchange_Rights rights_txt gt array type gt function store gt true result_type gt string function gt core Permission callable_getRightsTxt M thodes additionnelles public static function callable getRightsTxt om uid oid lang Srights_txt array res om gt browse uid core Permission array Soid array rights Slang Srights Sres Soid righ
13. dela traduction de la valeur des champs au sein d un objet instance Traduction de termes li s une classe d objet Chaque package poss de un dossier intitul i18n lui m me contenant pour chaque langue de traduction un dossier dont le nom correspond au code ISO 639 de la langue ex fr BE ou zh_CN Au sein de ces dossiers pour chaque classe est d fini un fichier json dont le pr fixe est le m me que le nom de la classe laquelle il se rapporte ex Student json Ces fichiers de traduction sont au format UTF 8 et en notation JSON et contiennent les traductions des termes de tous les l ments qui peuvent tre traduits attributs label et help Ce syst me n est pas le plus l ger en terme d overhead mais offre l avantage d tre utilisable tel quel par l interface graphique pas de traitement c t serveur En effet le fichier de traduction est accessible directement via requ te HTTP library classes objects package_name i18n lang object_name json Par ailleurs pour obtenir le fichier de traduction via script il faut invoquer get core i18n lang Emplacement data core i18n lang php Exemple d URL http localhost easyobject get core_i18n_lang amp class school Student amp lang fr Traduction de la valeur des champs d un objet Tous les champs de type simple peuvent tre traduits voir types de champs Pour permettre cela une table d di e aux traductions est d finie e
14. e beta Validation du noyau Validation d un package v rification de la coh rence entre DB et classes amp de la syntaxe des classes PHP des vues HTML et des fichiers de traduction json Pr vus Cr er une base de donn es compatible sur base d un sch ma SQL G n rer une classe PHP partir d une table existante G n rer des fichiers vues par d faut list default html et form default html Import Export de donn es Pour consulter la liste des plugins et les appliquer un ou plusieurs package il est possible d utiliser l application core _utils exemple d URL http localhost easyobject index php show core utils Note Bien entendu ces scripts peuvent tre crits par le d veloppeur utilisateur lui m me ou adapt s en fonction de ses besoins particuliers documentation easyObject v 1 0 d cembre 2012 JOHO 20 20 BY NC SA
15. easyObject modern web applications made easy Manuel Utilisateur version 1 0 d cembre 2012 par C dric Fran oys http www cedricfrancoys be easyobject Ce document est mis disposition selon le Contrat Attribution NonCommercial ShareAlike 3 0 Unported disponible en ligne http creativecommons org licenses by nc sa 3 0 ou par courrier postal Creative Commons 171 Second Street Suite 300 San Francisco California 94105 USA Table des mati res 1 Pr sentation du fonctionnement sise 3 BSUR Browse Search Update Remove ii ieenenenesseseeeeeeeeeennnes 3 Description de la structure arborescente sise 4 D finition d un objet usure nn EAA AE Oa E aL EEE NEEE aAa O adada 5 Coh rence entre d finition class php et structure en DB 5 Types de CHAMPS AR E E A E tac 5 Champs SYST ME nacre sr nine none Mate a EEE A ten a Ea N 6 M thodes communes is siisseessseenneeeeeereneeeeereeeeeeeeeeeeeees 6 M thode getColumnS ses unes ikara n aE E EENE E sense rame 6 M thode getDefaults liissssssssa canine nu a a a aE 11 M thode getrabl siiin tisser a aa aa ere aaa aaa etat re AE 12 M canisme d h ritage isitin eina a a E E R EEEE E a EEA EIEEE ER 12 Syst me de gestion des droits sise 12 Systemes d tradUctioN c 03L40202 a Rires bent e me en sie data E tna es 14 Traduction de termes li s une classe d objet iiiicicciciicciiiiiiiiiiiciiiiiiiiiiiiiiiiii 14 Traduction de la vale
16. es et de la d finition du contexte C est l unique point d entr e client rpc_server php Script serveur en cas d utilisation en mode client server url_resolver php Script invoqu en cas d erreur 404 et en charge de l url rewriting dossiers actions Dossier contenant les scripts r alisant des op rations sur les objets et retournant ventuellement des r ponses au format JSON requ tes do apps Dossier contenant les scripts applicatifs g n rant des pages html requ tes show data Dossier contenant les scripts permettant d obtenir des informations sur les objets en retournant des r ponses au format JSON requ tes get library Dossier contenant tout ce qui peut tre inclus par des scripts php fichiers et classes classes dossier contenant les classes php objects Dossier contenant les d finitions d objets fichiers class php ainsi que les fichiers de template d dition views et de traduction i18n orm c ur applicatif contient les classes object class php objectManager class php IdentificationManager class php I18n class php et ErrorHandler class php db Dossier contenant les classes associ es l interface avec la base de donn es DBConnection class php factory pattern DBManipulator cass php et classes h rit es adaptation des m thodes avec les commandes propres au DBMS utilis utils Classes utilitaires utilis es par le c ur applicatif files contient config inc php Zend Emplacement du framework Ze
17. iant d un objet de la classe courante rel foreign_key le nom de la colonne de rel_table contenant l identifiant d un objet de la classe point e documentation easyObject v 1 0 d cembre 2012 JOSO 9 20 BY NC SA Exemple issu de la classe school Teacher courses_ids gt array type gt many2many foreign_object gt school Course foreign_field gt teachers_ids rel_table gt school_rel_course_teacher rel_foreign_key gt course_id rel_local_key gt teacher_id related Ce type de champ permet de sp cifier une relation indirecte de type many2one ou one2many Le principe est de renseigner le champ d un autre objet accessible par relations successives Attribut Description result type le type r sultant de la relation indirecte i e le type du champ point final foreign_ object le nom du champ point final path tableau associatif reprenant les noms des champs successifs permettant d atteindre le champ final note le premier champ doit appartenir la classe courante Exemple du champ school_id de la classe school Lesson school id gt array type gt related result _type gt many2one foreign_object gt school Schoo l path gt array class_id course_id school_ id function Les champs calcul s ou fonctionnels permettent de doter une classe de champs dont la valeur d pend
18. n DB Lorsqu un champ est marqu comme multilang les valeurs de ses diff rentes traductions s obtiennent l aide d une requ te SQL Objet Translation champs string lang code ISO 639 1 string object_class string object_field integer object_id mediumblob value documentation easyObject v 1 0 d cembre 2012 CJ DSO 14 20 BY NC SA Pour le champ value le type SQL MEDIUMBLOB est utilis overhead de 3 bytes taille max de 16 7 Mo En effet la taille de la colonne value peut tr s fort varier d un champ un autre le type binary peut repr senter un document une image une vid o Et la plupart du temps ce sont des textes qui n cessitent une traduction string short_text ou text Dans tous les cas un overhead de 3 caract res est acceptable et imposer une limite 16 m gaoctets ne semble pas pr judiciable Note puisque le type SQL est libre du moment qu il permette la compatibilit des types easyObject il faut veiller si l on souhaite qu un champ binaire puisse tre traduit par exemple un document pdf disponible en plusieurs langues ce que la valeur de ce champ n ait jamais une taille sup rieur celle du type SQL MEDIUMBLOB par exemple BLOB LONGBLOB documentation easyObject v 1 0 d cembre 2012 JOSO 15 20 BY NC SA 2 Utilisation M thodes de base Les m thodes suivantes peuvent tre invoqu es telles quelles tout moment Note ces m thodes sont d finies
19. nd dans le cas o il est requis Note il n est pas utilis par le noyau de easyObject html js les librairies javascript utilis es par les scripts applicatifs apps css les feuilles de style html utilis es par les scripts applicatifs apps documentation easyObject v 1 0 d cembre 2012 JOSO 4 20 BY NC SA D finition d un objet Pour chaque classe d objet la structure est d finie dans un fichier class php l emplacement library classes objects packagel Toutes les classes d objet h ritent d une classe Object commune d clar e dans le namespace core et d finie dans library classes orm Object class php Une classe d objet est toujours renseign e avec le nom du package auquel elle appartient La syntaxe est package _name class_ name ex school Teacher Une classe d objet est compos e d un certain nombre de champs caract ris s par un nom et un type ainsi que d une s rie de m thodes Certaines m thodes sont syst me leur nom est standard et est utilis par ORM et d autres sont propres une classe d objet et d finies par l utilisateur voir plus bas Coh rence entre d finition class php et structure en DB En parall le une table doit tre d finie en base de donn es dont la structure correspond la classe associ e La contrainte principale est que les types doivent tre compatibles au sens large ex une colonne varchar 255 en DB peut indiff remment repr se
20. nter un champ string short_text ou text au sein de la classe associ e La coh rence entre la d finition d un type et la structure de la table associ e en DB doit tre maintenue en permanence Ceci est laiss la responsabilit du d veloppeur aucun processus logiciel ne met en place la coh rence ni ne corrige les ventuelles incoh rences voir scripts utilitaires stand alone Types de champs Les champs se r partissent en trois genres 1 Types directs boolean integer string short_text text date time datetime timestamp selection binary 2 Types relationnels one2many many2many many2one related 3 Types fonctionnels function ou en deux cat gories 1 Les champs simples ou triviaux la valeur de ces champs est stock e directement dans la table SQL associ e l objet et leur obtention ne n cessite donc pas de traitement boolean integer string short_text text date time datetime timestamp selection binary many2one 2 Les champs complexes champs dont la valeur n cessite un traitement pour tre retrouv e one2many many2many related function documentation easyObject v 1 0 d cembre 2012 JOHO 5 20 BY NC SA Champs syst me Certains champs sont communs tous les objets Champ Description id identifiant unique de l instance created date et heure de la cr ation de l instance modified creator modifier published deleted date et heure de la derni re modification de l instance
21. p cifi s setValues assigne les valeurs sp cifi es aux champs de l objet M thode getColumns La surcharge de cette m thode est obligatoire pour tout objet et renvoie un tableau associatif d finissant la structure de l objet les champs ou colonnes documentation easyObject v 1 0 d cembre 2012 Q020 6 20 Exemple issu de la classe school Course public static function getColumns return array label gt array type gt string school_id gt array type gt many2one foreign_object gt school School teachers_ids gt array type gt many2many foreign_object gt school Teacher foreign_field gt courses_ids rel_table gt school rel course teacher rel_foreign_key gt teacher_id rel_local_key gt course_id classes_ids gt array type gt one2many foreign_object gt school Class foreign_field gt course_id Base commune Les attributs communs tous les champs sont Attribut Description type le type du champ un type easyObject valide label l intitul du champ qui sera mentionn dans les formulaires d dition valeur par d faut nom du champ une indication fournir l utilisateur final style tooltip concernant le r le du champ ou la mani re de le remplir bool en indiquant si ce champ peut tre traduit Valeur par d faut false note seuls les champs simples
22. peuvent tre traduits cela exclut les champs relationnels et fonctionnels bool en indiquant si l interface utilisateur doit proposer ce champ comme crit re de recherche Valeur par d faut false notes une recherche est possible sur les champs simples ou sur les champs complexes stock s en DB voir plus bas les recherches pr senteront une meilleure performance si les champs correspondants en DB sont index s attribut pour les champs man y2many et one2many permet de limiter les objets associ s par la relation sur base d un crit re particulier format identique de celui utilis dans la fonction search help multilang search domain Q020 documentation easyObject v 1 0 d cembre 2012 7 20 Types disponibles boolean Utilis pour un champ destin contenir une valeur num rique bool enne vrai ou faux notes utilisation des constantes PHP true et false integer Utilis pour un champ destin contenir une valeur num rique sign e n gative ou positive notes sous PHP d pend de la plateforme g n ralement 32 bits sign sous SQL d pend du type et de la taille choisis string Utilis pour un champ destin stocker une chaine de caract res courte ne contenant aucun formatage ni retour la ligne ex nom de famille nom d un lieu short_text Utilis pour un champ destin stocker une chaine de caract res contenant ventuellement des retours la
23. t pas au d veloppeur Exemple classe school Class public function getTable return school_ class M canisme d h ritage Il est possible de surcharger une classe dans certaines situations la surcharge est m me obligatoire Pour mettre en place un h ritage la classe doit tre d finie non pas comme d rivant de la classe core Object mais bien de celle dont elle h rite en utilisant le mot cl extends la m thode getTable doit tre utilis e pour red finir le nom de la table associ e en base de donn es par d faut le nom de la table associ e sera celle de la classe parente la m thode getColumns doit retourner un tableau associatif contenant tous les champs de la nouvelle classe pour ne pas r crire les champs communs avec la classe parente on utilise la fonction PHP array_merge avec parent getColumns comme premier param tre Exemple Classe knine User namespace knine class User extends core User public function getTable return core _user public static function getColumns return array _merge parent getColumns array articles_ids gt array type gt many2many foreign_object gt knine Article foreign_field gt authors_ids rel_table gt knine_rel_article_user rel_foreign_key gt article_id rel_local_key gt user_id Syst me de gestion des droits La classe Permission est d di
24. ts if Srights amp R_CREATE Srights_txt create if Srights amp R_READ Srights_txt read if Srights amp R_WRITE Srights_txt write if rights amp R DELETE Srights_txt delete if Srights amp R MANAGE Srights_txt manage return implode rights_txt public static function onchange Rights om uid oid Slang Som gt update uid core Permission array Soid array rights_txt gt Permission callable getRightsTxt om Suid Soid Slang Slang M thode getDefaults Les valeurs de retour sont le r sultat soit d une fonction lamda closure soit d une fonction statique de la classe courante ou d une autre classe Exemple classe school Student Extrait de la m thode getColumns birthdate gt array type gt date subscription gt array type gt date M thodes additionnelles public static function getDefaults return array subscription gt school Student default_subscription birthdate gt function return 2000 01 01 public static function default_subscription return date Y m d documentation easyObject v 1 0 d cembre 2012 CJDSO 11 20 BY NC SA M thode getTable Il est galement possible de surcharger la m thode getTable Ceci peut tre utile dans le cas o le nom par d faut n est pas judicieux ou pour une raison ou pour une autre ne convien
25. uche de pr sentation et ne doit pas tre utilis pour une gestion des permissions required bool en indiquant si la saisie d une valeur est indispensable pour ce champ lors de l dition d un objet valeur par d faut false domain cha ne de caract res repr sentant le domaine auquel on souhaite limiter les l ments afficher applicable dans le cas de listes m2m ou 02m view le nom de la vue utiliser si cet attribut n est pas sp cifi c est le fichier list default html associ qui est utilis Exemple d un formulaire de la classe school Student Student form default html lt form action core_objects_update gt lt section name identification gt lt fieldset title identification gt lt span width 50 gt lt label for firstname gt lt label gt lt span gt lt span width 50 gt lt span gt lt fieldset gt lt section gt lt section name data gt lt fieldset title data gt lt span width 100 gt lt span gt lt fieldset gt lt section gt lt form gt lt var id firstname required true gt lt var gt lt br gt lt label for lastname gt lt label gt lt var id lastname required true gt lt var gt lt label for birthdate gt lt label gt lt var id birthdate required true gt lt var gt lt br gt lt label for subscription gt lt label gt lt var id subscription required false gt lt var gt lt l
26. ur des champs d un objet 14 LI E tele ere ee E 100 2000 VEE EA A0 PE REA 16 M thodes de base detente a CARRETA ete ie CA ARES 16 M thode User id 22 2ac20cnaeopec24245660065505b2 60 065anpd SAA tar oira nir ie aen 16 M thode user lanp resres eene aaae eE a eri nee ve nc tener demarre nat state sente 16 M thode Togin rsen a a a E a a dense nn tent 16 M thode validate sii ssss a ene n E a e a eme NAAA EREE 16 M thode browse ii ea e aE En E aa Condor Ana ree S 17 Methode search PER RER a E E EE ERE 17 M thode updat 5es siens diner enr a EE E a e aa E AE 17 M thode remove Pienier a a e a a aa ea aae Aera aeiaai eaS 17 M thode get iessen aia e et a EEEE EANES 18 M thode getStatic iii 18 dition des OR a ad a a 18 Applications d Base AAM 020 Ea R En iaei sonneries 20 Scripts utilitaires stand alone siennes 20 documentation easyObject v 1 0 d cembre 2012 JOSO 2 20 BY NC SA 1 Pr sentation du fonctionnement BSUR Browse Search Update Remove Il n y a que quatre fonctions de bases permettant de manipuler les objets et elles sont les m mes pour toutes les classes d objets browse pour obtenir la valeur d un ou plusieurs champs d un ou plusieurs objets search pour chercher les identifiants des ventuels objets r pondant un ou plusieurs crit res update pour cr er un objet ou modifier un ou plusieurs champs d un ou plusieurs objets remove pour supprimer
27. ur un champ destin stocker une relation plusieurs un N 1 c est dire une valeur num rique repr sentant l identifiant de l objet point Attribut Description foreign_object la classe d objet vers laquelle pointe le champ courant Exemple issu de la classe school Course school _id gt array type gt many2one foreign_object gt school School one2many Utilis pour un champ destin stocker une relation un plusieurs 1 N Attribut Description foreign_object la classe d objet vers laquelle pointe le champ courant foreign_field le nom du champ de la classe point e qui pointe en retour vers la classe courante foreign key le champ servant d identifiant pour les objets point s par la relation par d faut champ id Exemple issu de la classe school Teacher classes_ids gt array type gt one2many foreign_object gt school _Class foreign_field gt teacher_id many2many Utilis pour un champ destin stocker une relation plusieurs plusieurs M N Attribut Description foreign_object la classe d objet vers laquelle pointe le champ courant foreign_field le nom du champ de la classe point e qui pointe en retour vers la classe courante rel_table le nom de la table SQL d di e la relation m2m syntaxe recommand e package_rel_class1_class2 rel_local_key le nom de la colonne de rel_table contenant l identif

Download Pdf Manuals

image

Related Search

Related Contents

雑音許容度試験器用三角波ユニット 06  ダウンロード - スズキマリン  iques - Pêches et Océans Canada    取扱説明書    Guide d`administration du serveur SPARC Enterprise T2000  AmHaze™ II Quick Reference Guide Rev. 2 Multi  Napoleon Fireplaces GD80NT User's Manual  「CALMIE」メーカーカタログ(pdf)  

Copyright © All rights reserved.
Failed to retrieve file