我是django的新手。在我的项目中,我需要添加用户表单以上传一些文件并下载上传的文件。
将此视为在线存储空间。 这需要由基于类的视图来处理,以便扩展视图。
到目前为止,我尝试使用django-downloadview作为objectdownloadview https://django-downloadview.readthedocs.io/en/1.9/views/object.html 这个例子很好用。但是我无法将其扩展为项目的基于类的视图。 子弹的更多例子是我尝试将其更改为PK,但抛出错误。
我尝试了django-downloadview示例中的以下代码:-
from django_downloadview import ObjectDownloadView
from .models import Document
default_file_view = ObjectDownloadView.as_view(model=Document)
Models.py
from django.db import models
class Document(models.Model):
slug = models.SlugField()
file = models.FileField(upload_to='object')
urls.py
from django.conf.urls import url
from .views import *
urlpatterns = [
url(r'^object/(?P<slug>[a-zA-Z0-9_-]+)/$',default_file_view,name='object'),
]
有人可以在这里帮助我,还是分享一个简单的1页django文件上传和下载内容的工作示例。
关于, 贾斯瓦尔
答案 0 :(得分:0)
如果您按如下所示更改url表达式,则可以通过指定PK
下载文件,
urlpatterns = [
url(r'^object/(?P<pk>[0-9]+)/$', default_file_view, name='object'),
]
更新
class MyView(ObjectDownloadView):
# override something here
并在urls.py
中将其用作
urlpatterns = [
url(r'^object/(?P<pk>[0-9]+)/$', MyView.as_view(model=Document), name='object'),
]