Django:get_object_或_404不返回现有obj

2024-06-18 03:50:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我希望对Django有更多了解的人能告诉我可能发生了什么,因为我觉得我已经检查了所有的东西,无法理解它。在

我有一个简单的视图,可以很好地工作,其中的条目是根据url中唯一的字符串检索的:

# urls.py
urlpatterns = patterns('',
    # ...
    # url(r'^bib/(?P<unique_str>\w+-\w+-\d+)/(?P<slug>[\w\d-]+)$', 'nl.views.text_detail', name='text_detail'),
    # ...
    )


# views.py
import myapp.models
import django.shortcuts

def text_detail(request, unique_str, slug):
    entry= django.shortcuts.get_object_or_404(myapp.models.Entry, unique_str=unique_str)
    return django.shortcuts.render(request, 'mytemplate.html', {'entry': entry,})

但是,当我用完全相同的参数在另一个视图中调用完全相同的函数时,它会引发Http404。(当我运行Entry.objects.get(unique_str=unique_str)方法时,它会引发模型的DoesNotExist异常。)

该视图是一个AJAX视图,通过一个简单的URL访问,并接受包含URL的已发布JSON数据。基于传递的URL,我想检索相关条目并对其进行一些处理。在

给定一个在浏览器中显示文本详细信息视图的url,下面的视图在get_object_或_404()上失败:

^{pr2}$

这怎么可能?在

我正在使用django1.6和SQLite数据库(正在开发中)。在

提前谢谢你!在


Tags: djangotextpy视图urlget条目views