Besoin d'aide ?

Comment faire un héritage dans laravel.

Avatar de MrSolarius
MrSolarius

Bonjours, Je chercher à faire une base de donnée utilisée pour laravel avec le fameau php artisan make:migration maTableSQL

Le truc c'est que je cherche à faire héritée deux table d'une table comune. Et je n'est rien trouver sur la doc qui parle d'héritage. Ma question et donc es que c'est possible de représenter cette relation Avec laravel : Et la faire persister dans une base de données.

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

Salut,

Peux-tu nous en dire plus ? Je n'ai personnellement pas compris ce que tu veux faire.

Posté il y a 2 mois
Avatar de MrSolarius
MrSolarius

Je veut modélisée ma base de donnée avec de l'héritage en effet, une intervention ne peut conserner que un client un devis ou un passage.

Autrement dit il me faut une cles étrangère dans ma table intervention qui soit ratacher soit à un client soit à un devis soit à un passage.

Bien sur je pourais crée dans ma table intervention 3 foreign key qui se ratache à chaqu'une de c'est table, mais si je fait sa sa veut dire que je peut associer à une intervention un devis un passage et un client. Or moi je veut que intervention sa ne se rattache qu'à une de ces trois table (client, devis, passage).

Autrement dit je veut faire une contrainte de partition. Et pour faire une contrainte de partition on doit faire une table abstraite ici conserner sur laquel la relation et porter, et de laquelle est issus chacune de table pouvant être attacher.

Finalement ce que j'ai besoin c'est de représenter cette relation d'héritage avec les migration de laravel pour être bien integres dans le framwork.

Posté il y a 2 mois
Avatar de itanea
itanea

Comme Cinquième Dimension je ne suis pas sûr de bien comprendre ton besoin, mais est ce qu'à tout hasard les relations polymorphiques n'y répondraient pas ?

https://laravel.com/docs/6.x/eloquent-relationships#polymorphic-relationships

Posté il y a 2 mois
Avatar de MrSolarius
MrSolarius

C'est pas toute à fait se que je veut mais sa fait l'affaire. Du coup sa veut dire que du point de vue de ma base de donnée il resteras possible d'en ajouter plusieurs mais comme du point de vue du modèle objet ceux par quoi laravel passera toute le temp pour éditée ma base de données ce n'est plus possible avec le polymorphisme sa devrais le faire.

Je vais tester sa de mon coter ^^. Si j'ammais sa ne me correspond pas je reviendrais vers vous ;)

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

Au temps pour moi je n'avais pas vu ton schema tout à l'heure (étrange). Peut-être qu'il faut revoir ton schema (je ne critique pas, je m'intérroge): genre pourquoi un client s'attache à concerner ? Un passage et un devis ne sont-ils pas toujours attaché à un client ? De sorte que la clé étrangère de client soit dans passage et devis et plus dans concerne. C'est un exemple comme ça pour dire que tu peux peut-être éviter de galérer en retravaillant ton schema

Posté il y a 2 mois

Vous ne pouvez pas répondre à ce sujet.