L'affichage de l'image dans le SPG (Graal), obtenir un lien à partir de la base de données
Je suis un Grain de débutant. J'essaie de montrer une image miniature pour chaque produit dans un site, comme ceci:
<a href="#"><img src="${resource(dir:"images", file: "Nikon.jpg") }"/></a>/* 1 */
Le problème ici est que je veux enregistrer le lien de l'image dans la base de données, et obtenir le lien par:
${fieldValue(bean: productInstance, field: "image")} /* 2 */
Mais je ne peux pas remplacer le /* 2 /code dans les lieux de "Nikon.jpg" dans / 1 */, il provoque une erreur de syntaxe!
Après avoir fait quelques recherches, je vois que la plupart des tutoriels expliquent comment afficher une image qui stocke directement dans la base de données (par exemple, Comment faire pour afficher l'image en grain SPG?). Je ne suis pas sûr si cette approche est mieux, mais je veux encore prendre du lien de l'image à partir de la base de données.
J'ai aussi essayé de rechercher graal de la bibliothèque de balises à trouver tout le soutien de la balise, mais sans succès. Quelqu'un peut-il me donner un indice?
OriginalL'auteur Hoàng Long | 2010-11-22
Vous devez vous connecter pour publier un commentaire.
La syntaxe correcte pour éviter les erreurs de syntaxe serait:
<img src="${resource(dir:'images', file:fieldValue(bean:productInstance, field:'image'))}" />
Mais je vous conseille d'écrire votre propre bibliothèque de tags, car il est vraiment très simple à écrire et de votre GSPs sera beaucoup plus agréable si vous allez utiliser ce code beaucoup. Vous pouvez facilement écrire une balise qui serait appelé quelque chose comme:
<product:image product='productInstance' />
et pour plus de convivialité, vous pouvez faire le tagLib sortie le lien.La simplicité de l'écriture tagLibs est vraiment l'un des meilleurs graal fonctionnalités à mon avis.
OriginalL'auteur Gregor Petrin
Attends... Si j'ai lu votre question, littéralement, vous essayez quelque chose comme ceci:
Eh bien, c'est compliqué et mal. Cela devrait fonctionner:
OriginalL'auteur Michael Borgwardt
Je sauvegarde l'image storagePath dans la Base de données comme
../../../web-
extension à l'aide de FileUploadService.app/personImages/imageName.img
Pour l'affichage d'images dans le SPG
Exemple
De la première Utilisation FileUploadSevices fichier
De domaine:
Contrôleur save ():
DB chemin de stockage des fichiers:
En avatar fichier :
Liste GSP:
OriginalL'auteur R.V.RaguPrashanth
J'avais besoin d'une solution sécurisée qui a été faite d'une combinaison de http://grails.asia/grails-example-application-simple-document-management-system et http://grails.asia/grails-render-images-on-the-fly-in-gsp . Pour que purpouse j'ai utilisé un Domaine où je stocke le chemin d'accès d'images, un gsp pour afficher les images et un Contrôleur de servir les images
De domaine:
}
Graal Du Serveur De La Page:
Contrôleur:
Je montre les images de la base de données comme suit
Espère que cette aide
OriginalL'auteur Gelberth Amarillo Rojas