1

unique=True オプションを使用して SlugField が一意であることを要求できることはわかっていますが、特定のユーザーに対してのみ一意であることを要求することは可能ですか?

モデル。パイ:

from django.db import models
from django.contrib.auth.models import User

class ezApp(models.Model):
    name = models.SlugField(max_length=50, unique=True )
    date_created = models.DateTimeField('date created')
    date_updated = models.DateTimeField('date updated')
    created_by = models.ForeignKey(User)
    in_use = models.BooleanField()
4

1 に答える 1

5

ここで詳しく説明されているように、unique_together を使用することをお勧めします:
https://docs.djangoproject.com/en/dev/ref/models/options/#unique-together

class MyModel(models.Model):
    # ...

    class Meta:
        unique_together = ('name', 'created_by')

フォーム レベルでもベビーシッターを行う必要があるため、ユーザーが重複した名前を追加しようとすると、使用可能なエラー メッセージが表示されます。

于 2013-02-06T21:37:14.783 に答える