如何每次创建文件夹和子文件夹,我正在创建一个项目。文件夹的位置可以位于
media ----- Projects |----Project 1 |-----Subfolder 1
| |-----Subfolder 2
| |-----Subfolder 3
|
|----Project 2 |-----Subfolder 1
| |-----Subfolder 2
| |-----Subfolder 3
|
|----Project 3 |-----Subfolder 1
|-----Subfolder 2
|-----Subfolder 3
视图.py
def create_project(request):
form = ProjectForm(request.POST or None, request.FILES or None)
if form.is_valid():
project = form.save(commit=False)
project.save()
return render(request, 'projects/detail.html', {'project': project})
context = {
"form": form,
}
return render(request, 'projects/create_project.html', context)
您可以使用内置的 Python 函数从 django 视图操作文件系统。为此,您需要导入 os 模块。示例代码显示了文章的摘录:
import os;
#will check if c:\temp\python exists and if no will create it
dir = os.path.join("C:\\","temp","python")
if not os.path.exists(dir):
os.mkdir(dir)
从 django 使用它时,您需要注意运行您的应用程序的进程具有有限的权限,因此某些位置将无法访问。从 django 视图执行时,相对路径设置为PROJECT_ROOT(您在 settings.py 中定义)。然而,上面的代码与 dropbox 无关。为了管理 dropbox 中的文件夹,您需要使用他们为此提供的 API。
作为附加说明,当上传文件时,django 将自动在您的媒体文件夹中创建文件夹(如果您在FileField的'upload_to' 参数中指定了一个)。您可以通过将 upload_to 替换为一个函数来改变该行为,该函数可以根据您保存的内容返回不同的路径。如果你想朝那个方向前进,这可能很有用
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句