[Laravel] Multi-tenancy support

Ouverte
#6,967 4 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 3 jours

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
25/100
Type d'issue
Fonctionnalité
Clarté
À clarifier
Activité
À l'abandon
Stack technique
laravel, php
Domaine
backend, databases

Piste de recherche

Aucun fichier source ni test n'est nommé. Commencez par la documentation Tenancy two-applications et suivez comment API Platform met en cache les attributs du modèle au démarrage, plutôt que de sélectionner la base de données du tenant à chaque requête. C'est terminé lorsque les attributs du modèle spécifiques au tenant sont reconnus sans dupliquer les tables du tenant dans la base de données centrale.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Description
I would like to use API Platform alongside the Tenancy package. The concept behind Tenancy is simple. There are two types of databases (applications):

  • A central database, which stores the list of all tenants (along with other non-tenant-dependent data).
  • Multiple tenant databases, where tenant-specific data is stored.

Based on the request, we determine which database should be used for tenant-specific models. And here lies the problem: API Platform only recognizes the structure of the central database at startup and caches the model attributes. As a result, it cannot find the attributes for tenant models.

It seems to work only if the tenant database is a subset of the central database. This means I need to generate all tenant tables in the central database as well and then switch to the tenant database at request time. However, this feels more like a workaround rather than an ideal solution.

Langage dominant
PHP
Étoiles
2.6k
Forks
988
Merge moyen
4 j 13 h
PR mergées (30 j)
96

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de api-platform/core

Toutes les issues de api-platform/core

Issues similaires

Plus d'issues PHP

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.