0

我正在創建文件共享應用程序。我有多個用戶。 在建立用戶模型來存儲用戶數據和模型user_files存儲文件PLZ在下面找到我forms.py用戶之間的Django文件共享

from django import forms 
from django.contrib.auth.models import User 
from Box.models import user_files 


class Loginform(forms.Form): 
    username=forms.CharField(max_length=50) 
    password=forms.CharField(widget=forms.PasswordInput) 

class UserRegistration(forms.ModelForm): 
    password = forms.CharField(label='Password',widget=forms.PasswordInput) 
    password2 = forms.CharField(label='Repeat Password',widget=forms.PasswordInput) 

    class Meta: 
     model=User 
     fields= ('username','first_name','email') 

    def clean_password2(self): 
     cd=self.cleaned_data 
     if cd['password']!=cd['password2']: 
      raise forms.ValidationError('Passwords do not match') 
     return cd['password2'] 

class Fileupload(forms.ModelForm): 
    class Meta: 
     model= user_files 
     fields = ('Filename','Browse') 

和我model.py

from django.db import models 

class user_files(models.Model): 
    Filename = models.CharField(max_length=50) 
    Browse = models.FileField() 

我已經使用Django的。那麼現在我怎麼區分哪個用戶上傳哪個文件?以及我如何分享其他用戶?我被困在這一點上。 在此先感謝

回答

1

您可以建立一個字段uploaded_by,它是外鍵用戶模型,這將幫助您識別哪個用戶上傳它,並下載你只需要建立一個文件的鏈接HTML。

+0

如果我把字段uploaded_by,那麼我需要手動更新它,對嗎?如果是的話......怎麼做? –

+0

您必須通過表單接受文件,因此當表單發送到那裏時,您可以執行類似「form_object.uploaded_by = request.user」的操作,因此您不必手動執行該操作。 –

+0

用於顯示上傳文件的鏈接,如何獲取該鏈接? –