Django release 1.5: 'url' requires a non-empty first argument. The syntax changed in Django 1.5

后端 未结 6 419
遥遥无期
遥遥无期 2020-12-02 10:02

I started using Django release 1.5 and got a problem with my old code:

{{post.title}}<

6条回答
  •  情书的邮戳
    2020-12-02 10:08

    I really hate doing all this junk by hand, so I wrote a sed script to do it for me. Make sure you have a backup first, then run this in your templates directory:

    find . -type f -print0 | xargs -0 sed -i 's/{% url \([^" >][^ >]*\)/{% url "\1"/g'
    

    It'll go through all of your template files and replace this:

    {% url something.else foo bar %}
    

    with this

    {% url "something.else" foo bar %}
    

    Be careful, I was a little lazy with this, it might break on some constructs. It's still going to be easier looking for errors in a diff than doing it by hand, though.

提交回复
热议问题