Как создать индивидуальные идентификаторы для каждой модели для каждой учетной записи пользователя [Django]
Я столкнулся с проблемой, когда каждый раз, когда другой аккаунт, который вошел в систему, создает новую коллекцию, id для этой коллекции - id '1' (127:0.0.1/collections/1), но когда вы входите в другой аккаунт и этот пользователь создает новую коллекцию, id коллекции - '2' (127:0.0.1/collections/2), когда я хочу, чтобы эта коллекция начиналась с id = 1.
Я хочу, чтобы каждый пользователь имел свой собственный ID при создании коллекций. То же самое относится и к элементам внутри коллекции. Как будто все пользователи на сайте имеют общие идентификаторы.
Я не был уверен, что именно мне следует искать в Интернете, поэтому я не смог найти никаких предложений. Также я использую встроенный профиль пользователя, а не пользовательский.
Любые ресурсы или идеи были бы замечательными. Моя версия Django - 4.0.3
Models.py
class Collection(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="collection", null=True)
name = models.CharField(max_length=200)
def __str__(self):
return self.name
class Input(models.Model):
name = models.ForeignKey(Collection, on_delete=models.CASCADE)
text = models.CharField(max_length=300)
complete = models.BooleanField()
def __str__(self):
return self.text
views.py
def create(response):
if response.user.is_authenticated:
username = response.user.username
if response.method == "POST":
form = NewInput(response.POST)
if form.is_valid():
n = form.cleaned_data["name"]
t = Collection(name=n)
t.save()
response.user.collection.add(t)
return HttpResponseRedirect("/collections/%s" % username)
else:
form = NewInput()
return render(response, "main/create.html", {"form": form})
else:
return HttpResponseRedirect("/login")
Редактируйте: мой urls.py
path("create/", views.create, name="create"),
path("collections/<str:username>", views.collections, name="collections"),
path("collections/<str:username>/<int:id>", views.index, name="index_id"),