这是views.py
def home (request):
now = datetime.datetime.now()
t = get_template('index.html')
html = t.render(Context({'current_date': now}))
return HttpResponse(html)
def run(request, id):
table=""
table + = "<table> <tr> <td> <a href= \" /run/{{ id }} \" > "+ linkname + "</a></td></tr></table>"
return HttpResponse(table)
这是urls.py
from mysite.views import run
urlpatterns = [
url(r'^home/$',home , ),
url(r'^run/(?P<id>)$',run),
}
在主页用户输入参数时,调用run方法,处理该参数,根据给定的参数动态生成表,并使用生成的表生成响应。该表包含一个链接,我试图传递参数{{id}}。但是,当我单击表中的链接时,它会出现以下错误: 当前网址(/ {{id}})与其中任何网址都不匹配。
我是django的新手,任何人都可以帮助我
答案 0 :(得分:1)
它不是模板,这是python字符串。所以你需要使用字符串fromat
,
试试这种方式,
table + = "<table> <tr> <td> <a href= \" /run/{0} \" > "+ linkname + "</a></td></tr></table>".format(id)
另一种方式:
from django.template import Context, Template
def run(request, id):
table=""
table + = "<table> <tr> <td> <a href= \" /run/{{ id }} \" > "+ linkname + "</a></td></tr> </table>"
t = Template(table)
c = Context({"id": id})
return HttpResponse(t.render(c))
注意:我没有找到linkname
变量。所以django会抛出一个错误。
Doc is here