Comment dois-je appeler un Grain de service à partir d'un spg?
Comment puis-je invoquer un service directement à partir d'un point de vue? Je suis en train d'essayer avec ${my.domain.service.method}
, mais il se plaint qu'il ne peut pas trouver la propriété.
Et non, je ne veux pas utiliser un contrôleur parce que la vue est un modèle.
- voir aussi stackoverflow.com/questions/1607186/...
Vous devez vous connecter pour publier un commentaire.
Et puis vous pouvez appeler
${myService.method()}
dans votre spg vueÊtre conscient que le fait d'appeler transactionnelle méthodes de service à partir de points de vue qui affecte les performances. Préférable de déplacer tous vos transactionnelle appels de méthode de service pour le contrôleur (si vous pouvez)
Préférable d'utiliser la bibliothèque de balises parce que la création d'une instance de service directement dans la vue via le chargeur de classe ne SERA PAS autowire d'autres services, a déclaré que de vivre dans le service que vous essayez d'utiliser.
À l'aide de la bibliothèque de balises, vous aurez l'auto-câblage de ces services.
Dans votre spg vue
<g:customTag param1="$modelObjec" param2="someString" />
Dans votre taglib dossier (
yourApp/grails-app/taglib/com/something/MyAppTagLib
):Votre MyService:
Essayer ce - bien utile
Reportez-vous à cette
Aussi ce n'est pas un recommened chose, vous pouvez toujours utiliser taglib
Je pense que la meilleure façon de le faire est:
De cette façon, vous obtenez l'instance de service sans perdre la autocâblés services.