django 文件管理服务器,如何使用FileField浏览django中的服务器端文件?

在问题上,我有形式

file = forms.FileFIeld(widget = forms.FIleInput())

但这允许我浏览客户端计算机上的文件.我想告诉我自己的服务器端文件.我完全了解安全风险.这是我的个人项目,不会被其他人使用(以防万一有人会对我大喊大叫).它不一定只是相同的机制.我只想从表格中获取此名称.不得上传或下载任何内容.

这将作为另一个服务器应用程序的文件选择.

如果无法浏览整台计算机,如何指定可以存储文件的目录以供进一步浏览?

解决方法:

如果要构建一个系统来远程访问计算机上的文件,可以使用ftp或ssh来完成.

如果你需要访问特定目录中的文件,你可以将它们放在django的静态部分并拥有django serve you static content.然而,这不是django的预期设计,你也可以使用Apache提供http服务器的文件.

如果您希望构建一个google docs / dropbox类型的Web服务,那么django可以帮助您作为Web框架.但是,您需要运行某种本地索引并使用类似于PyLucene的数据将所有文件元数据索引添加到数据库,然后将相同的文件上载到可下载的path online或静态服务器文件夹.这本身并不是Django问题.

标签:python,django

来源: https://codeday.me/bug/20190704/1373895.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Django ,可以通过 Django 自带的文件处理模块来实现文件上传到服务器的功能。具体步骤如下: 1. 在 settings.py 配置上传文件存储目录: ```python MEDIA_ROOT = '/path/to/media' MEDIA_URL = '/media/' ``` 2. 在 models.py 定义上传文件的模型: ```python from django.db import models class UploadFile(models.Model): title = models.CharField(max_length=50) file = models.FileField(upload_to='uploads/%Y/%m/%d/') ``` 其,`upload_to` 参数指定了上传文件存储的相对路径,可以根据需要进行修改。 3. 在 forms.py 定义上传文件的表单: ```python from django import forms from .models import UploadFile class UploadFileForm(forms.ModelForm): class Meta: model = UploadFile fields = ('title', 'file',) ``` 4. 在 views.py 处理文件上传请求: ```python from django.shortcuts import render, redirect from .forms import UploadFileForm def upload_file(request): if request.method == 'POST': form = UploadFileForm(request.POST, request.FILES) if form.is_valid(): form.save() return redirect('success') else: form = UploadFileForm() return render(request, 'upload.html', {'form': form}) def success(request): return render(request, 'success.html') ``` 5. 在模板文件 upload.html 添加文件上传表单: ```html <form method="post" enctype="multipart/form-data"> {% csrf_token %} {{ form.as_p }} <button type="submit">上传文件</button> </form> ``` 6. 在模板文件 success.html 显示上传成功信息: ```html <h2>文件上传成功!</h2> ``` 通过以上步骤,就可以实现 Django 上传文件服务器的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值