我正在构建一个站点,用户可以在其中输入文本并提交文本,以便可以将其作为文件保存在服务器上并进行访问。不幸的是,我不太确定如何将输入的文本保存为文件。
任何人都可以为我指出正确的方向,告诉我如何做或详细说明我必须采取的步骤吗?如果我错过了明显的谷歌搜索结果,Preemptive 深表歉意。作为 Django 的新手,我可能不经意地忽略了有用的资源。
这是相关的 HTML,主要是从文件上传表单复制的表单:
<form name="myWebForm" id="submissionCode_codeEditor" action="uploadFile/" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="500" />
<input type="text" name="title" placeholder="File Name"/>
<input type="hidden" name="taskID" value={{ taskID }} />
<input type="submit" value="Submit This Code" />
</form>
这里是相关的 Django 模型:
class Upload(models.Model):
title = models.CharField(max_length=50)
fileUpload = models.FileField(upload_to='file_uploads')
userID = models.ForeignKey(User)
task = models.ForeignKey(Task)
uploadTime = models.DateTimeField(auto_now_add=True)
def __unicode__(self):
return self.title
最佳答案
您正在寻找 ContentFile
.它是一个 Django File
子类,它使用文本字符串而不是文字文件进行实例化。然后,您可以将 ContentFile
保存到您的 FileField
。
from django.core.files.base import ContentFile
content = ContentFile(some_text)
upload_instance.fileUpload.save('/path/to/where/file/should/save.txt', content)
upload_instance.save()
关于html - 如何将文本输入保存为 HTML 和 Django 中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11581904/