Django upload file? -
how can upload file using django?
i have followed these instructions upload files
here, not getting error, when submit form, other details in form got saved db. uploaded file not saved anywhere.
/models.py/
class resmodel(models.model): resume_header = models.charfield(max_length=100) upload_resume = models.filefield(upload_to='documents') /forms.py/
class resmodelform(modelform): class meta: model = resmodel /views.py/
def resview(request): if request.method == "post": form = resmodelform(request.post, request.files) if form.is_valid(): = resmodel(resume_header=resume_header, upload_resume = request.files['upload_resume']) a.save() return render_to_response('/profile/save/success/') else: form = resmodelform() return render_to_response('resume.html', {'form': form}) return render_to_response('resume.html') /resume.html/
<form action="." method="post" >{% csrf_token %} <table border="0" align="center" cellsapcing="1" cellspadding="1"> <tr> <td colspan="2"><h3> personal information</h3></td> </tr> <tr> <td>resume header<sub>(250 words max)</sub></td> <td><input type="text" name="resume_header"></td> </tr> <tr> <td>upload resume<sub>(.doc/.docx, rtf, pdf, txt)</sub></td> <td><input type="file" name="upload_resume" ></td> </tr> <tr> <td> <input type="submit" value="submit"> <input type="reset" value="reset"> </td> </tr> </table> </form> /urls.py/
urlpatterns = patterns('', (r'^profile/$', resview),) /settings.py/ in settings media path , url is..
current_dir = os.path.dirname(os.path.abspath(__file__)) media_root = os.path.join(current_dir, 'media') media_url = '/var/www/uploadresume/resume/media/' this code. fix mistakes if there?
you have used form.save() manually save it
def resview(request): if request.method == "post": form = resmodelform(request.post, request.files) if form.is_valid(): form.save() return render_to_response('/profile/save/success/') else: form = resmodelform() return render_to_response('resume.html') you forgot put enctype="multipart/form-data" in <form>
<form action="." method="post" enctype="multipart/form-data"> {% csrf_token %} .......... </form>
Comments
Post a Comment