2014-11-03 64 views
-2

我嘗試使用django框架和下載文件,但是我有一些關於URLS的問題。 這是我的客戶端部分(HTML5):Python Django,url地址問題

<form enctype="multipart/form-data" id="formfile" action='/upload' method="post"> 
     <input type="file" name="file"/> 
     <input type="submit" id="getfile" value="Open a fits file" /> 
     <span id="progressbar"></span> 
    </form> 

而對於symplify,我只是寫這對我的看法部分:

def index(request): 
    print('coucou') 
    return render(request, 'index.html') 

def upload_file(request): 
    if request.method == 'POST': 
     file = request.files['file'] 
     print(file) 
     return render(request, 'index.html') 

但「上傳部分」不與URL進行(錯誤404):

urlpatterns = patterns('CubeVisu.views', 
     url(r'^$', 'index'), 
    url(r'^/upload$', 'upload_file')) 
+4

您是否嘗試刪除URL模式的'/ upload'中的前導'/'? – karthikr 2014-11-03 15:36:25

回答

0

是的,這是工作,當我刪除前導/在URL模式

urlpatterns = patterns('CubeVisu.views', 
url(r'^$', 'index'), 
url(r'^upload$', 'upload_file')) 

,並在我的模板部分如下:

<form enctype="multipart/form-data" id="formfile" action='upload' method="post"> 

謝謝大家。

3

urls.py刪除開頭的斜線:

urlpatterns = patterns('CubeVisu.views', 
    url(r'^$', 'index'), 
    url(r'^upload$', 'upload_file')) 

也可以使用url template tag引用您的網址,而不是硬編碼他們:

<form enctype="multipart/form-data" id="formfile" action='{% url "upload_file" %}' method="post"> 
+0

提及'url'('reverse')+1 – Ben 2014-11-03 15:56:56