Kohana: relations ORM has_one & belongs_to

Après avoir fait une courte introduction à la librairie ORM de Kohana, après avoir écrit un article vous présentant quelque astuces indispensables pour vous faciliter la vie avec l'ORM, il est venu le temps d'aborder l'implémentation des relations (relationships) entre vos tables avec la librairie ORM.

Pour ce faire, nous allons prendre l'exemple d'une base contenant des étudiants (students) et des voitures (cars) appartenant chacune à un étudant. Le schéma ci-dessous présente de façon graphique les relations entre les entités. Dans cet article seules les relations has_one et belongs_to seront abordés (la première case de l'image) donc une relation un pour un (les autres seront traitées ultérieurement).

ruby-on-rails-data-relationships1.JPG

Lire la suite…

Filed under: Kohana, PHP
Tags: , , , , ,

Kohana: quelque astuces concernant l'ORM

J'ai déjà couvert, dans un article précédent, les bases de l'ORM. Un autre article viendra pour traiter les relations avec la librairie ORM. Le présent article présente quelque astuces sympathiques pour faciliter certains traitements avec l'ORM au travers d'exemples simples. Alors au menu:

  • Surcharge de la méthode __get() afin de faire des traitements sur les attributs d'un objet récupéré de la base
  • Surcharge de la méthode __set() afin de faire des traitements sur les attributs d'un objet avant de l'insérer en base
  • Présentation d'une fonction permettant de tester l'existence de l'élément dans la base
  • Présentation d'une fonction permettant d'initialiser un objet ORM plus rapidement

Lire la suite…

Filed under: Kohana, PHP
Tags: , , , ,

Kohana: un exemple de contrôleur pour un formulaire (validation, ORM)

Geert, un membre très actif du projet Kohana a posté sur le forum un exemple de contrôleur et de vue permettant de créer un formulaire avec:

  • Pré remplissage des champs avec des valeurs
  • Validation des données
  • Ré-affichage du formulaire avec les données entrées si la validation échoue
  • Insertion en base en ORM si la validation est un succès

Lire la suite…

Filed under: Kohana, PHP
Tags: , , , , ,

Kohana: introduction à la librairie ORM

Cet article est traduit de l'article suivant avec l'accord de son auteur

Un ORM est un Object Relationnal Mapper, et plus exactement un outil permettant de manipuler les données d'une base au travers d'objets. Ils évitent d'utiliser du SQL, et facilitent donc la sélection, l'enregistrement ou la destruction des données. Cet article présente au travers de quelque exemples les bases de l'implémentation d'ORM avec Kohana.

Pour les besoins de cet article, nous prenons l'exemple d'un site avec des articles. Nous avons donc besoin d'un modèle pour récupérer, insérer, mettre à jour et supprimer ces articles ainsi qu'un contrôleur pour que les utilisateurs puissent interagir avec eux.

En tant qu'introduction, cet article ne couvre pas l'implémentation des vues ni la sécurisation de l'application

Lire la suite…

Filed under: Kohana, PHP
Tags: , , ,