1

ユーザー、フォルダ、ファイルのdjangoリレーションモデルの作り方を知りたい

ユーザーは複数のファイルとフォルダーを持つことができます。

フォルダーには多くのファイルを含めることができますが、フォルダー int フォルダーを含めることはできません

class User_t(models.Model):
    username = models.CharField(max_length=30)
    user_id = models.CharField(max_length=30)
    pcw = models.CharField(max_length=30)
    name = models.CharField(max_length=30)
    surname = models.CharField(max_length=30)
    mail = models.EmailField(max_length=50)
    validateMail =  models.BooleanField()
    birthday = models.DateTimeField(max_length=60)
    premium = models.BooleanField()
    premiumEnd = models.DateTimeField(max_length=10)
    totalUpload = models.CharField(max_length=15)
    avatar = models.URLField()

class FileItem(models.Model):
    file_id = models.CharField(max_length=30)
    file_name = models.CharField(max_length=75)
    date_upload = models.DateTimeField(max_length=10)
    data_size = models.CharField(max_length=75)
    key = models.CharField(max_length=75)
    # Django will automatically create owner_id field
    owner = models.ForeignKey(User_t, related_name='files')
    folder = models.ForeignKey('FolderItem', related_name='files')
    # not sure what this (login_accept) is for...
    # login_accept = models.ManyToManyField(User_t)
    file_i = models.FileField(/mnt/test/)

class FolderItem(models.Model):
    folder_id = models.CharField(max_length=30)
    folder_name = models.CharField(max_length=75)
    data_size = models.CharField(max_length=75)
    key = models.CharField(max_length=75)
    owner = models.ForeignKey(User_t, related_name='folders')
    # again, not sure what this is for
    # login_accept = models.ManyToManyField(User_t)

login_accept は、ファイルを読み取る (ダウンロードする) ためにアクセスできる (所有者が権限を持っている) ユーザーのリストです。

私のやり方が正しいかどうかわかりませんか?

ありがとう

4

0 に答える 0