News

Le ultime novità da Abitareplus.it

Modèle de toucan

Il s`agit de l`approche Toucan des choses: par défaut de faire les choses de la manière simple (et sécurisée) que vous voudrez la plupart du temps, mais permettent d`éviter ce comportement dans les rares cas où vous avez besoin. Ou, en d`autres termes, dans Toucan, vous définissez les différents modèles utilisés dans votre application avec defmodel. Les modèles encapsulent les informations et les comportements liés à une table spécifique dans la base de données de l`application, et ont leur propre type d`enregistrement unique. Les modèles peuvent être compilés directement dans HoneySQL, et peuvent donc être utilisés dans des endroits où vous auriez autrement utiliser un identificateur (c.-à-d. le nom de la table du modèle): l`appel d`une définition de modèle sans argument retourne une séquence de toutes les instances de ce modèle: par exemple, supposons que vous aviez un modèle de lieu, et voulait que la valeur de sa colonne: Category soit automatiquement convertie en mot clé lorsqu`elle sort de la base de données, et de nouveau dans une chaîne lorsqu`elle est mise en. Vous pourriez laisser Toucan savoir s`en occuper en définissant le modèle comme suit: les propriétés du modèle sont un moyen puissant d`étendre la fonctionnalité des modèles Toucan. Par exemple, supposons que vous ayez plusieurs modèles avec: Created-at et: updated-aux colonnes. Chaque fois qu`une nouvelle instance de ces modèles est insérée, vous voulez définir: créé-at et: mis à jour-à l`heure actuelle; chaque fois qu`une instance est mise à jour, vous souhaitez mettre à jour: updated-at. où Property-value est la valeur de la clé en question retournée par l`implémentation du modèle de propriétés. Vous trouverez des macros, des protocoles et des fonctions spécifiques au modèle dans l`espace de noms Toucan. Models. Le protocole IModel définit les différentes méthodes qui sont utilisées pour fournir un comportement personnalisé pour différents modèles.

Tous les modèles définis par defmodel implémentent automatiquement ce protocole à l`aide des définitions par défaut dans IModelDefaults, mais vous pouvez substituer une ou plusieurs méthodes pour répondre à vos besoins. Chaque fois que vous récupérez un lieu, Toucan appliquera automatiquement la fonction appropriée: out pour les valeurs de: Category: vous pouvez gérer ce comportement en définissant des implémentations personnalisées pour pré-insertion et pré-mise à jour (discuté plus en détail ci-dessous) pour chacun de ces modèles, mais cela devient répétitif rapidement. Au lieu de cela, vous pouvez simplifier ce comportement en définissant une nouvelle propriété qui peut être partagée par plusieurs modèles: les propriétés sont globales, ce qui vous permet de définir un ensemble unique de fonctions qui peuvent être appliquées à plusieurs modèles qui ont la même propriété, sans avoir à définir code répétitif dans des méthodes de modèle telles que pré-insertion!. Les toucans sont des habitants très sociaux et bruyants des forêts tropicales de l`Amazonie, bien que les oiseaux vivent aussi loin au nord que le Mexique. Ils utilisent leur très grande et o ouvent couleurs vives becs pour une variété de buts, de recueillir des fruits de la pointe des branches d`arbres, à se défendre.