【发布时间】:2012-02-26 15:25:42
【问题描述】:
如何允许用户将文件上传到他们自己的、用户指定的文件夹,并且只能看到他们上传的文件?我正在使用 django 文件传输。目前它让我可以选择将媒体放入哪个文件,但我可以将其放入任何用户的文件并查看每个用户的媒体。这是我的上传/models.py:
from django.db import models
from django.contrib.auth.models import User, UserManager
def uploadmodel_file_upload_to(instance, filename):
print 'instance.user.username = '+ str(instance.user.username)
return 'uploads/%s/%s' % (instance.user.username, filename)
class UploadModel(models.Model):
user = models.ForeignKey('auth.user')
file = models.FileField(upload_to=uploadmodel_file_upload_to)
【问题讨论】:
-
“目前它给了我一个选择”? “它”?什么给了你选择?
-
“它”是用户。在表单上,它为我提供了一个下拉表单,其中包含所有用户可供选择。
-
“在表单上它给了我一个下拉表单”?真的吗?这是否意味着您正在为此模型使用默认的 ModelForm?如果是这样,请更新问题以显示这一点。和。正在执行什么视图功能?这是默认的管理员视图吗?或者你写的视图函数?请更新问题以提供所有信息。请不要添加 cmets。