2016-04-23 25 views
0

我想在url中发送数据库查询的结果。 问题是,我找不到匹配结果的网址。在url中发送列表(UNICODE)Django

我做了一个函数,删除结果中的()字符。 但在发送它的时候,我得到了这个错误。

找不到'with'(u'Juegos',)'和关键字参数'{}'的'deleteProject'反向。 1个图案(多个)尝试:[ '管理/ deleteProject/- $(P [\ d] +?)']

views.py

def index(request): 
    arrayBases = getDatabases(request) 
    return render(request, 'index.html', { 
     'arrayBases': arrayBases, 
    }) 

def getDatabases(request): 
    cursor= connection.cursor() 
    cursor.execute("SELECT * FROM Administration_proyecto") 
    bases = cursor.fetchall() 
    arrayBases = [] 
    for i in bases: 
     for j in i: 
      arrayBases.append(j) 
    return arrayBases 

def deleteProject(request, base): 
    print request 
    return HttpResponseRedirect(reverse('index')) 

的index.html

<table> 

    <tr> 
    <th>Nombre del proyecto</th> 
    <th>Acción</th> 
</tr> 

{% if arrayBases %} 
    {% for base in arrayBases %} 
    <tr> 
    <td id="{{ base }}"> {{ base }} </td> 
    <td> 
     <a href="{% url 'deleteProject' base %}"> 
     <img height="15px" src="{% static "icons/delete.svg" %}"> 
     </a> 
    </td> 

    </tr> 
    {% endfor %} 
{% endif %} 

</table> 

urls.py

urlpatterns = [ 
    url(r'^index/$', views.index, name='index'), 
    url(r'^deleteProject/(?P<base>[-\d]+)$', views.deleteProject, name="deleteProject"), 
] 

我试图改变d在URL AW,但它并不适用

+0

根据您的代码,这看起来像是administrative_proyecto表中的数据存在问题。你可以请张贴那张桌子的几行吗? – 2ps

+0

这是行:(u'Juegos',)'(u'PruebaTemp',)' –

+0

,看起来不正确。另外,你是否有一个用于administration_proyecto的django模型,还是你必须通过原始SQL访问的表? – 2ps

回答

0

您可以将URL端点正则表达式模式更改为:

^deleteProject/(\w+)/?$ 

其中(\w+)是一个非命名捕获组匹配一个或多个字母数字字符。