1

我在以下代码行中遇到了一个问题,它通过了一个带有空格的争论。

<a href="{% url graph_exercisename exercise_name=e.exercisename|slugify %}" class="button" >Graph</a>

当我从 html 文件中剪切上面的代码时,页面编译得很好。当一个没有空格的 arg 传递给 exercise_name 时,它​​也会编译。

这是我的网址模式

urlpatterns = patterns('',
url('^exercises/(\d{1,6})/$', exercises,name='displayexercises'),
url('^workouts/$',workouts,name="displayworkouts"),
url('^graph/$',bodyweight_graph), 
url('^graph/(?P<exercise_name>\w+)/$',graph_exercisename,name="graph_exercisename"), 
)

最后是视图:

def graph_exercisename(request,exercise_name):
    exercise_name = exercise_name.replace('-'," ").title()

    exercises = Exercise.objects.filter(workout__user=request.user.id).filter(exercisename = exercise_name)
    exercises = exercises.order_by('workout__workoutdate')[:10]
    values = Rep_Table(exercises).table

    return render(request,'graph.html',{'values':values}) 

更奇怪的是,Django 根本没有在错误页面上给我任何代码,它只是说明 Django 遇到了错误。

谢谢您的帮助!

4

1 回答 1

2

请更改您的网址条目:

url('^graph/(?P<exercise_name>\w+)/$',graph_exercisename,name="graph_exercisename"),

至:

url('^graph/(?P<exercise_name>[^/]+)/$',graph_exercisename,name="graph_exercisename"),
于 2013-01-08T05:36:42.787 回答