【问题标题】:django - invalid syntax (urls.py, line 7)django - 无效的语法(urls.py,第 7 行)
【发布时间】:2014-01-25 00:58:33
【问题描述】:

我在教程中的 urls.py 上做了一些细微的改动,我有以下内容 -

mysite/urls.py -

from django.conf.urls import patterns, include, url

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    url(r'^admin/', include(admin.site.urls)),
    url(r'^TidalDEV/', include('TidalDEV.urls')),
)

TidalDEV/urls.py -

from django.conf.urls import patterns, url

from TidalDEV import views

urlpatterns = patterns('',
    url(r'^$', views.index, name='index')
    url(r'^(?P<pk>[0-9]+)/$', views.tesxml, name='tesxml'),
)

这是views.py中的视图——

def tesxml(self, request, pk, format=None, renderer_context=None):
    """
    returns an XML of a jobmst listing
    """
    template_vars['jobmst'] = (queryset1, [pk])
    template_vars['jobdtl'] = (queryset2, [pk]) 
    template_vars['jobdep'] = (queryset3, [pk])

    t = loader.get_template('TidalAPI/templates/xml_template.xml')
    c = Context(template_vars)

    return HttpResponse(t.render(c), mimetype="text/xml")

当我尝试在http://localhost:8080/TidalDEV/10081/ 访问我的网址时,我得到了无效的语法。这里有什么问题?

基本上我需要视图来填充我构建的模板 XML 文件。

【问题讨论】:

    标签: django


    【解决方案1】:

    您在 TidalDEV/urls.py 中的索引视图后缺少一个逗号

    【讨论】:

    • 每个人都会遇到这种情况。此外,您可能会发现内置的render 快捷方式很有用——您很少需要直接使用模板的render 方法。如果您愿意,这样做并没有错,但您可以缩短代码。
    • 我正在尝试创建一个自定义 xml 以匹配旧应用程序,因此我需要加载到模板中 :( 我现在遇到一个新错误,我将发布一个新问题.
    • 并不是说使用模板生成XML有什么问题,只是有更简单的方式来表达“用这个上下文渲染这个模板并将结果放到这个响应对象中”的代码链”。如果我碰巧看到你的新问题,我会看看,当然我不能保证任何事情。
    • 我明白了!是的,我有我的“最终状态”,其中涉及使用 django-rest-framework 并且获得相同的 XML 更容易且编码更少,但由于这个遗留应用程序的自定义性质,有些事情我无法做到更容易。
    猜你喜欢
    • 1970-01-01
    • 2018-11-04
    • 2012-03-30
    • 1970-01-01
    • 1970-01-01
    • 2013-01-06
    • 1970-01-01
    • 1970-01-01
    • 2021-07-05
    相关资源
    最近更新 更多