我正在研究从 html 模板上传文件。我看过很多文档,包括 FileFields、ImageFields 等。但是,理想情况下我不想重写我的代码。目前,我的模板上有一个简单的表单,我想在那里有一个上传功能,在那里,一张图片将被上传并存储到我的应用程序媒体文件夹中,如果可能的话,还可以添加到数据库中。
我确实知道我可能走了一条漫长而复杂的路线,但如果有人能提供帮助,那就太好了!
html.py:
<div class="row"> <div class="span1 offset5"> </bR> <form class="form-horizontal" method="get" action="/add/submit" value="add"> <fieldset> <div class="input"> <div class="inline-inputs"> <label>Ride Name:</label><input type="text" name="name"> <label>Type:</label><input type="text" name="type"> <label>Theme:</label><input type="text" name="theme"> <label>Description:</label><textarea rows="5" name ="description"></textarea> <label>Author:</label><input type="text" name="author"> <label>Date Released:</label> <div id="datetimepicker" class="input-append date"> <input type="text" name="date"></input> <span class="add-on"> <i data-time-icon="icon-time" data-date-icon="icon-calendar"></i> </span> </div> <label>Thread:</label><input type="text" name="thread"> <label>Video</label><textarea rows="2" name ="video"></textarea> <br><br> <input class="btn btn-primary" type="submit" value="Add" /> </div> </div> </fieldset> </form> </div> </div>
目前我的 Views.py 只是获取输入的数据并将其插入数据库。我想添加要上传文件的功能:
def Ride_Add_Submit(request):
name = request.GET['name']
type = request.GET['type']
theme = request.GET['theme']
description = request.GET['description']
author = request.GET['author']
releasedate=request.GET['date']
video=request.GET['video']
thread=request.GET['thread']
entry = RollerCoaster(name=name, type=type, theme=theme, description=description, releasedate=releasedate, author=author, video=video, thread=thread)
entry.save()
return TemplateResponse(request, 'Ride_Add.html')