У меня есть веб-приложение для бизнеса.После входа в систему пользователь (управляющий бизнесом) может просматривать таблицы с информацией о своем бизнесе.
userID 1 -> * строк в MasterTable,
userID 1 -> * строк вa ForecastTable
Мне нужно изменить его, чтобы владелец нескольких компаний мог войти в учетную запись для определенного бизнеса и отредактировать ту же информацию, что и менеджер.
Я думал об измененииСхема базы данных примерно такая: userID - businessID 1- * строки в MasterTable, строки в ForecastTable
Если у меня будет 2 страницы входа, сначала для userID, затем businessID.Тогда все столбцы в базе данных ссылаются только на businessID, поэтому разные пользователи могут редактировать одни и те же данные.
Или одна и та же форма входа заставляет пользователя вводить businessID и свое имя пользователя, затем в зависимости от того, какой businessID они вводят, он входит в эту страницу?
Я не уверен, как лучше всего реализовать что-то подобное.
Вот как выглядит моя модель django:
from django.db import models
from django.contrib.auth.models import User
class MasterEntry(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
date = models.DateField()
cutoff1 = models.IntegerField(default=0)
cutoff2 = models.IntegerField(default=0)
rooms_sold = models.IntegerField(default=0)
is_blackout = models.BooleanField(default=False)
class ForecastEntry(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
date = models.DateField()
rate = models.IntegerField(default=0)
У пользователя есть сотни этих строк «основной записи» и «записи прогноза».Я запрашиваю в базе данных строки и создаю таблицу во внешнем интерфейсе.