Laravel 6

Insérer une vue en base de données

Avatar de Gabriel
Gabriel

Bonsoir !

Je cherche un moyen pour stocker une vue dynamique en variable afin de stoker son contenu en base de données.

Autrement dit :

  • l'utilisateur remplit un formulaire
  • les données mises en forme par la vue
  • la vue est sauvegardée en base de données

Ça éviterai d'avoir des lignes HTML en plein milieu de mon controller pour gérer la mise en forme des données...

Des idées ?

Bonne soirée et d'avance merci ! :D

Posté il y a 1 mois
Avatar de KYoann
KYoann

Salut,

Ton utilisateur à t'il besoin d'accèder à des variables et à les insérer dans sa vue ?

Posté il y a 1 mois
Avatar de CinquièmeDimension
CinquièmeDimension

Salut,

Mais quel est l'objecttif de la manoeuvre en fait ? C'est pour ordonner (déplacer/afficher/cacher) des blocs, ou pour completement autre chose ? Je ne comprends pas bien ce que tu cherche à faire.

Posté il y a 1 mois
Avatar de bestmomo
bestmomo

Salut,

Moi aussi ça m'intrigue... je n'ai jamais eu besoin de faire ça et je ne comprends pas non plus la finalité...

Posté il y a 1 mois
Avatar de michelange2008
michelange2008

Et puis c'estun peu contraire au principe de séparation des vues et des données

Posté il y a 1 mois
Avatar de itanea
itanea

Je suis également curieux d'en savoir plus car là tel que je le lis cela ne s'inscrit pas du tout dans le modèle MVC ! Mais sans doute que tu as une idée précise derrière la tête Gabriel, fais nous en part !

Posté il y a 1 mois
Avatar de Gabriel
Gabriel

Bonsoir !

(Oula quel engouement...)

Concrétement, c'est un projet de forum (donc avec des sujets, messages, etc...) seulement certains sujets sont créés à partir de formulaires spécifiques. L'idée est donc que le membre remplisse son formulaire, les données sont vérifiées dans le controleur, mises en forme dans une vue puis le tout est inséré en base de données sous forme de message standard.

Actuellement dans la mise en forme des données se fait dans le controlleur et c'est pas super estéthique... c'est la raison pour laquelle j'aimerai passer les données à une vue depuis le controller pour enregistrer le tout (un peu comme pour les mails en fait... les données passent par le controlleur, sont envoyés à la vue et la vues est envoyée par mail) sauf que dans le cas présent la vue (ou plutôt le contenu HTML de la vue) est enregistrée en base de données.

Après il y a peut-être une autre solution pour le faire à laquelle je n'aurai pas pensé ?

Merci pour vos réponses (et désolé pour l'attente ah ah)

Posté il y a 1 mois
Avatar de michelange2008
michelange2008

Qu'entends-tu par "mise en forme des données par le controller" ?

Posté il y a 1 mois
Avatar de bestmomo
bestmomo

En fait c'est la formulation "un vue en base données" qui n'est pas très judicieuse. En fait c'est juste du format HTML un peu comme quand on mémorise un article de blog. La mise en forme qui est effectuée dans le contrôleur pourrait sans doite être prise en chrage par une vue justement et les informations qui sont issues d'un formulaire sont mémorisable en base de données.

Posté il y a 1 mois
Avatar de Gabriel
Gabriel

Oui, effectivement c'était peut-être pas la meilleure des formulations. Mais c'est bien ça ! En gros, au lieu de claquer le HTML du message dans le controlleur avant de l'envoyer à la BDD, je souhaiterai utiliser une vue pour générer le message HTML à partir des variables du formulaire et envoyer ensuite le message mis en forme en base de données.

Et non, malheureusement je ne peux pas juste enregistrer les données du formulaires pour ensuite les mettre en page, puisqu'il s'agit d'un forum et que, bien que le sujet soit spécifique, ça reste un sujet standard auquel on peut répondre et qui utilise donc une vue générale... d'où le besoin de faire la mise en forme du message avant l'insertion en base de données !

Posté il y a 1 mois
Avatar de bestmomo
bestmomo

Tu peux toujours utiliser une vue avec la méthode render pour générer le HTML et en faire ce que tu veux.

Posté il y a 1 mois

Vous ne pouvez pas répondre à ce sujet.